11.vim命令,重定向,管道练习题 - xiaoxiaoxuegao/rhcsa GitHub Wiki
- 将student的主目录中的所有长格式(包括隐藏目录和文件)重定向到名为editing_final_lab.txt文件中
答:ls -la >> editing_final_lab.txt
- 使用vim编辑文件
答:vim editing_final_lab.txt
- 删除前三行,因为他们不是普通的文件名
答:命令模式下:按三次dd /d3d /;可视化模式下:按住v -》按键盘下键选三行-》按x删除
- 删除第一行中文件所属组和其他人的权限列(权限列是长格式下rw-rw-r--. 三个一组,文件拥有者权限,文件所属组权限,其他人权限。要删除的是r--)
答:命令模式六次x;按住v -》按键盘右键选六个》按x删除
- 删除剩余行中文件所属组和其他人的权限列(可视化块删除)
答:按v选列-》按住command v -》按键盘右键选六个--》按下键选所有列-》按x删除
- 删除文件所属组列,是所有行中仅保留一个“student”列 (第二个snow)
答:按v选列选第二个snow》按住command v按下键选所有列-》按x删除
- 删除时间列,但是在所有行中保留月和日
答:答:按v选列选年/时间》按住command v按下键选所有列-》按x删除
- 删除Desktop和Public行
答:/Desktop定位到那行-》dd; /Public定位到那行-》dd
- 将Document行移动到第一行,将Music移动到第二行,即那个Pictures后面的行全部移动到Music行后(剪切)
答:/Document定位到这一行-》dd剪切-》P(大写)粘贴到光标上一行
/Music定位到这一行-》dd剪切-》gg到第一行-》p(小写)粘贴到光标下一行
/Pictures定位到这一行-》d3d剪切-》/Music定位到这一行-》p(小写)粘贴到光标下一行
- 复制前三行,并拷贝至文件末尾
答:gg跳到第一行-》:set nu显示行号-》y3y拷贝前三行-》G跳到末尾-》p粘贴
- 找到含有”shrc”内容的行,并将该部分内容替换为”|I am a good guy|”(替换)
答:i进入编辑模式手写替换;/shrc找到它->:1,$s/ shrc /|I am a good guy|”/(末行模式替换)g(全局替换)
- 保存并退出,制作一个备份
答: :x或:wq保存退出
cp editing_final_lab.txt editing_final_lab.txt.bak备份
- 在文件末尾加一条虚线,以标记新内容的开头
答:echo “-----------------------------------------------------”>> editing_final_lab.txt
- 将文件的前三行后三行内容分别追加到文件末尾
答:head -3 editing_final_lab.txt >> editing_final_lab.txt前三行追加到文件末尾
tail -3 editing_final_lab.txt查看后三行
坑:现在如果追加后后三行的内容head -3 editing_final_lab.txt >> editing_final_lab.txt其实是刚才刚追加过来的前三行的内容
:set nu显示行号-》head -16 editing_final_lab.txt |tail -3(找出16行后三行)→ head -16 editing_final_lab.txt |tail -3 >> editing_final_lab.txt追加
- 将文件的第5-10行追加至文件末尾
答:head –n 10 editing_final_lab.txt (找出前十行)
head –n 10 editing_final_lab.txt | tail -5(筛选出后5行)
head –n 10 editing_final_lab.txt | tail -5(筛选出后5行) >> editing_final_lab.txt
- 将文件内容以邮件方式发送给root用户(重定向)
答:mail –s “snow to root” < editing_final_lab.txt