Linux shell练习题——grep、|、ln、chmod、vim

这篇具有很好参考价值的文章主要介绍了Linux shell练习题——grep、|、ln、chmod、vim。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

练习⼀: 复习

1. 打开终端窗⼝, 使⽤ pwd 命令查看⾃⼰所在⽬录.
pwd
2. 使⽤ cd 命令通过相对路径切换到根(/)⽬录
cd ../..
3. 使⽤ cd - 切换到上次所在的⽬录
cd -
4. 使⽤ ls 命令以列表的形式查看当前⽬录下所有的⽂件(包括隐藏⽂件),并将输出结果重定向到桌⾯的 my.txt ⽂件中.
ls -la > Desktop/my.txt
5. 在当前⽬录中使⽤ cat 命令查看⽂件内容.
cat Desktop/my.txt
6. 使⽤ cd 命令通过绝对路径⽅式切换到桌⾯⽬录下
cd /home/zhen/Desktop
7. 使⽤ mkdir -p 命令在桌⾯⽬录创建 hello1 ⽬录、hello2 ⽬录, 并在hello1⽬录创建⼦⽬录 world1, 在 hello2 ⽬录下创建⼦⽬录 world2.
mkdir -p hello1/world1 hello2/world2
8. 在桌⾯创建 a.txt、b.txt、c.log、d.log 四个⽂件.
touch a.txt b.txt c.log d.log
①. 双击打开 a.txt, 并在⽂件中输⼊内容 hello a.txt
②. 双击打开 b.txt, 并在⽂件中输⼊内容 hello.b.txt
③. 双击打开 c.log, 并在⽂件中输⼊内容 hello c.log
④. 双击打开 d.log, 并在⽂件中输⼊内容 hello d.log
9. 使⽤ ls *.log 查看所有的以 log 结尾的⽂件, 并将所有以 log 结尾的⽂件名写⼊到 桌⾯的 file.log ⽂件中
ls *.log > file.log
10. 使⽤ cat 命令将 a.txt b.txt ⽂件内容合并到 ab.txt ⽂件, 并将 ab.txt⽂件移动到 hello1/world1 ⽬录中.
cat a.txt b.txt > ab.txt
mv ab.txt hello1/world1
11. 使⽤ cat 命令将 c.log d.log ⽂件内容合并到 cd.log ⽂件, 并将 cd.log⽂件移动到 hello2/world2 ⽬录中.
cat c.log d.log > cd.log
mv cd.log hello2/world2/cd.log
12. 使⽤ tree 命令查看桌⾯⽬录结构, 并将输出结果存储到桌⾯的abcd.txt ⽂件中.
tree > abcd.txt
13. 使⽤ cat 命令查看 abcd.txt ⽂件内容
cat abcd.txt
14. 使⽤ mkdir 命令创建 backup ⽬录, 将 hello1、hello2 两个⽬录拷⻉到 backup ⽬录中.
mkdir backup
cp -r hello1 hello2 backup
15. 使⽤ ls --help 命令将 ls 帮助信息保存到桌⾯⽬录下 help.txt ⽂件中
ls --help > help.txt
16. 使⽤ rm 命令删除 abcd.txt ⽂件
rm abcd.txt
17. 使⽤ rm 命令删除 hello1、hello2 两个⽬录
rm -r hello1 hello2
18. 使⽤ mv 命令将 help.txt ⽂件重命名为 ls_help.txt, 并移动到 backup⽬录中.
mv help.txt ls_help.txt
19. 使⽤ rm *.txt *.log 删除桌⾯以 log 结尾、以 txt 结尾的所有⽂件.(注意: 如果桌⾯有其他重要⽂件,⼀定要备份好).
rm *.txt *.log
20. 最后桌⾯就剩下 backup ⽬录.

练习⼆: grep

1. 在 test.txt 中使⽤ grep 命令查找 包含数字 12 的所有⾏.
grep 12 test.txt
2. 在 test.txt 中使⽤ grep 命令查找包含 will 的所有⾏.
grep 'will' test.txt
3. 在 test.txt 中使⽤ grep 命令查找以 t 或者 a 开头的所有⾏
grep '^[ta]' test.txt
4. 在 test.txt 中使⽤ grep 命令查找以 years 结尾的所有⾏
grep 'years$' test.txt
5. 在 test.txt 中使⽤ grep ‘^…e’ test.txt 命令查找满⾜条件的所有⾏
grep '^..e' test.txt

练习三: 管道

1. 使⽤ cd 命令切换到 /usr/bin ⽬录下
cd /usr/bin
2. 使⽤管道 ls | grep ‘^n’ 将以 n 开头的⽂件名写⼊到桌⾯的 files.txt ⽂件中
ls | grep '^n' > /home/zhen/Desktop/file.txt
3. 使⽤管道以列表的形式将所有的⾮m结尾的⽂件名字追加写⼊到桌⾯的 file.txt ⽂件中
ls | grep -v 'm$' >> /home/zhen/Desktop/file.txt

练习四: ln

1. 使⽤ echo ‘hello world’ > hello.txt 命令在桌⾯创建 hello.txt ⽂件.
echo 'hello world' > hello.txt
2. 使⽤ mkdir 在桌⾯创建 folder ⽬录
mkdir folder
3. 使⽤ ln -s 命令在桌⾯创建 hello.txt ⽂件的软链接 symbolic_link
ln -s hello.txt symbolic_link
4. 使⽤ cat symbolic_link 命令通过软链接查看 hello.txt ⽂本内容
cat symbolic_link
5. 使⽤ mv 命令将 symbolic_link 移动到 folder ⽬录下
mv symbolic_link folder/
6. 使⽤ cd 命令切换到 folder ⽬录下
cd folder
7. 使⽤ cat symbolic_link 命令通过软链接再次查看 hello.txt ⽂本内容,是否能查看? 提示信息是什么?
不能查看,报错:cat: symbolic_link: No such file or directory
8. 使⽤ rm 命令删除软连接 symbolic_link
rm symbolic_link
9. 使⽤ cd 命令回到桌⾯
cd ..
10. 使⽤ ln -s 命令通过绝对路径⽅式创建对 hello.txt ⽂件的软连接symbolic_link
ln -s /home/zhen/Desktop/hello.txt symbolic_link
11. 使⽤ mv 命令将 symbolic_link 移动到folder⽬录下
mv symbolic_link folder
12. 使⽤ cat symbolic_link 命令通过软链接再次查看 hello.txt ⽂本内容,是否能查看?
cd floder
cat symbolic_link
13. 使⽤ cd 命令切换到桌⾯
cd ..
14. 使⽤ rm 删除源⽂件 hello.txt
rm hello.txt
15. 使⽤ cd 切换到folder ⽬录, 使⽤ cat 命令通过软连接 symbolic_link查看⽂件内容, 是否能够查看?
不能,报错:
cat: symoblic_link: No such file or directory
16. 使⽤ cd 命令切换到桌⾯
cd ..
17. 使⽤ echo ‘hello world’ > hello.txt 命令在桌⾯创建 hello.txt ⽂件.
echo 'hello world' > hello.txt
18. 使⽤ ln 命令创建对 hello.txt ⽂件的硬链接 hard_link
ln hello.txt hard_link
19. 使⽤ rm 命令删除源⽂件 hello.txt
rm hello.txt
20. 使⽤ cat hard_link 命令查看⽂件内容, 是否能够查看?
cat hard_link
可以查看,硬链接相当于备份

练习五: chmod

1. 使⽤ cd 命令进⼊桌⾯⽬录
cd /home/zhen/Desktop
2. 使⽤ touch 命令创建 hello1.txt、hello2.txt ⽂件
touch hello1.txt hello2.txt
3. 使⽤ chmod 字⺟法给 hello1.txt ⽂件设置权限: ⽤户 rw ⽤户组: r 其他: x
chmod u=rw,g=r,o=x hello1.txt
4. 使⽤ chmod 字⺟法给 hello2.txt ⽂件设置权限: ⽤户r ⽤户组: x 其他:rw
chmod u=r,g=x,o=rw hello2.txt
5. 双击打开 hello2.txt, 是否能够编辑该⽂件?
可以打开,编辑的内容不能保存
6. 在桌⾯创建⽬录 folder
mkdir folder
7. 在 folder ⽬录中创建 a.txt b.txt ⽂件
touch folder/a.txt folder/b.txt
8. 使⽤ chmod 命令去掉 folder⽬录的⽤户的 r 权限
chmod u-r folder
9. 使⽤ ls folder 命令尝试查看⽂件列表, 注意是否能够查看?
ls folder
不能,报:ls: cannot open directory 'folder/': Permission denied
10. 使⽤ chmod 命令给 folder⽬录⽤户增加 r权限
chmod u+r folder
11. 使⽤ ls folder 命令能够查看⽂件列表
ls folder
12. 使⽤ chmod 命令去掉 folder ⽬录⽤户的 w 权限
chmod u-w folder
13. 使⽤ cd 命令切换到 folder ⽬录中, 尝试使⽤ touch 命令创建⽂件test.txt
cd folder
touch test.txt
不可以,创建报错:touch: cannot touch 'test.txt': Permission denied
14. 使⽤ cd 回到 folder ⽬录的上⼀级⽬录
cd ..
15. 使⽤ chmod 命令为 folder ⽬录增加 w 权限
chmod u+w folder
16. 再次尝试在 folder ⽬录中创建 test.txt ⽂件
touch folder/test.txt
可以创建

练习六:vim

1. 使⽤ cd 命令切换到桌⾯⽬录
cd /home/zhen/Desktop
2. 使⽤ vim 创建 hello.txt ⽂件
vim hello.txt
3. 输⼊ i 切换到编辑模式
i
4. 在 hello.txt ⽂件中输⼊以下内容

《咏泰⼭》

远看泰⼭⿊乎乎,

上头细来下头粗.

如把泰⼭倒过来,

下头细来上头粗.

5. 使⽤ ESC 键切换到命令模式
ESC
6. 输⼊冒号(:w) 完成⽂件内容保存.
:w
7. 再次输⼊冒号(:set nu) 显示⽂件⾏号.
:set nu
8. 再次输⼊冒号(:3) 光标移动到第3⾏
:3
9. 在命令模式下, 输⼊O在第3⾏上⾯增加⼀⾏, 内容以下:

以上两句诗歌充分表达了诗人对泰山的暧昧.

O
以上两句诗歌充分表达了诗人对泰山的暧昧.
10. 在命令模式下, 输⼊ G 光标定位到⽂件末尾
Esc
G
11. 在命令模式下, 输⼊ o 在末尾⾏后⾯增加⼀样, 内容如下:

以上两句诗歌充分表达了诗人乱七八糟的心态.文章来源地址https://www.toymoban.com/news/detail-512054.html

O
以上两句诗歌充分表达了诗人乱七八糟的心态.
  1. 在命令模式下, 输⼊ v 选中诗歌的前 4 ⾏
Esc
v
13. 在命令模式下, 将前4⾏中的泰⼭两个字替换成⻩⼭.
:1,4s/泰山/黄山/g
14. 在命令模式下, 拷⻉最后两⾏内容
2yy
15. 在命令模式下, 将拷⻉的内容粘贴到第3⾏下⽅.
:4
p
16. 在命令模式下, 使⽤ dd 删除第3⾏内容.
:3
dd
17. 在命令模式下, 退出保存该⽂件.
:wq

到了这里,关于Linux shell练习题——grep、|、ln、chmod、vim的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 嵌入式培训机构四个月实训课程笔记(完整版)-Linux系统编程第五天-Linux消息共享内存练习题(物联技术666)

      更多配套资料CSDN地址:点赞+关注,功德无量。更多配套资料,欢迎私信。 物联技术666_嵌入式C语言开发,嵌入式硬件,嵌入式培训笔记-CSDN博客 物联技术666擅长嵌入式C语言开发,嵌入式硬件,嵌入式培训笔记,等方面的知识,物联技术666关注机器学习,arm开发,物联网,嵌入式硬件

    2024年01月24日
    浏览(51)
  • 嵌入式培训机构四个月实训课程笔记(完整版)-Linux网络编程第三天-UDP编程练习题(物联技术666)

    网盘链接:https://pan.baidu.com/s/1TKdHdeuDI8XPaakepvSLZQ?pwd=1688  提取码:1688 利用UDP实现双人不同机器聊天(服务器可以被多人连接,显示多人聊天记录) //-------------------------服务器 #include string.h #include sys/types.h #include sys/socket.h #include unistd.h #include netinet/in.h #include stdio.h #include stdlib

    2024年02月02日
    浏览(52)
  • 【Java练习题汇总】《第一行代码JAVA》综合测试三,汇总Java练习题

    线程的启动方法是( )。 A. run() B. start() C. begin() D. accept() Thread 类提供表示线程优先级的静态常量,代表普通优先级的静态常量是( )。 A. MAX_PRIORITY B. MIN_PRIORITY C. NORMAL_PRIORITY D. NORM_PRIORITY 设置线程优先级的方法是( )。 A. setPriority() B. getPriority() C. getName() D. setName() 下面 ( )方法是

    2024年02月14日
    浏览(46)
  • 循环结构(含练习题)

    当循环次数或范围确定时,多用for循环,反之多用while循环 循环结构一般由四部分组成: 初始化语句,在循环开始最初执行,并且只执行一次 条件判断、步进语句、循环体 for循环,循环体可以执行零次或多次 每执行一次循环体,就会执行一次步进语句 foreach循环,JDK 5 新特

    2024年02月19日
    浏览(38)
  • 树状数组练习题

    为什么大佬们一眼看出是树状数组呢? 不是一眼看出树状数组,而是 要把 【找两个相邻的最小值之间还有几个数没删掉】 的问题转变成动态区间和问题,这个转化过程才是最重要的 , 至于你用什么数据结构求动态区间和是次要的,很多数据结构都能做,最常用的树状数组

    2024年02月03日
    浏览(39)
  • python文件练习题

    【问题描述】 从一个文本文件内读入任意多个学生的分数,求出最高分,最低分和平均分存入文件result.txt内。 【输入形式】 一个文件,文件中分数之间由换行隔开,输入的文件名为grade.txt。输入的分数都是整数。 【输出形式】 计算出grade.txt中所有分数的最高分,最低分和

    2024年02月03日
    浏览(44)
  • 蓝桥杯练习题(三)

    本文主要是【算法】——蓝桥杯练习题(三)的文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是听风与他🥇 ☁️博客首页:CSDN主页听风与他 🌄每日一句:狠狠沉淀,顶峰相见

    2024年01月15日
    浏览(45)
  • spark考试(练习题)

    点击下载练习题word文档! 点击下载RDD编程笔记! 编程题: 1.(1.5分)单选题 1.5 下列选项中,哪个不属于消息系统()。 A Kafka B RabbitMQ C ActiveMQ D Zookeeper 参考答案: D 解析: 无 2.(1.5分)单选题 1.5 下列选项中,说法正确的是() A 批处理时间间隔必须是窗口滑动时间间隔的整数倍

    2024年02月05日
    浏览(40)
  • 练习题----顺序栈算法

    ​输入一个包括 \\\'(\\\' 和 \\\')\\\' 的字符串string ,判断字符串是否有效。要求设计算法实现检查字符串是否有效,有效的字符串需满足以下条件: A. 左括号必须用相同类型的右括号闭合。 B. 左括号必须以正确的顺序闭合。 C. 每个右括号都有一个对应的相同类型的左括号。 ​该题需

    2024年04月26日
    浏览(42)
  • 集合的练习题

    练习1:随机点名器 需求:班级里有N个学生,实现随机点名器 练习2:带概率的随机 需求: ​ 班级里有N个学生 ​ 要求在随机的时候,70%的概率随机到男生,30%的概率随机到女生 练习3:随机不重复 需求: ​ 班级里有 N 个学生,被点到的学生不会再被点到。但是如果班级中

    2024年02月09日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包