6案例6:vim效率操作
6.1问题
本例要求掌握使用vim文本编辑器时能够提高操作效率的一些常用技巧和方法,完成下列任务:
- 将文件/etc/passwd复制为/opt/nsd.txt,然后打开/opt/nsd.txt文件,练习命令模式下的切换/复制/删除/查找操作
- 将文件/etc/man_db.conf复制到/opt目录下,然后打开/opt/man_db.conf文件,将第50~100行内的“man”替换为“MAN”,在vim中设置行号查看效果
6.2方案
命令模式常用操作:
- 1G或gg,跳转到文件的首行
- G,跳转到文件的末尾行
- yy、#yy,复制光标处的一行、#行
- p、P,粘贴到光标处之后、之前
- x或Delete键,删除光标处的单个字符
- dd、#dd,删除光标处的一行、#行
- d^、d$,从光标处之前删除之行首/行尾
- /word向后查找字符串“word”,再按n/N跳至后/前一个结果
- u,撤销最近的一次操作
- U,撤销对当前行的所有修改
- Ctrl+r取消前一次撤销操作
- ZZ保存修改并退出
末行模式常用操作:
- :s/old/new,替换当前第一个“old”
- :s/old/new/g,替换当前行所有“old”
- :n,m s/old/new/g,替换第n-m行所有的“old”
- :% s/old/new/g,替换文件内所有的“old”
- :w /root/newfile,另存为其他文件
- :r /etc/filesystems ,读入其他文件内容
- :set nu|nonu,显示/不显示行号
- :set ai|noai,启用/关闭自动缩进
6.3步骤
实现此步骤需要按照如下步骤进行。
步骤一:vim命令模式下的切换/复制/删除/查找
1)建立联系文件
将文件/etc/passwd复制为/opt/nsd.txt:
[root@svr7 ~]# cp /etc/passwd /opt/nsd.txt
2)使用vim打开练习文件,默认处于命令模式
[root@svr7 ~]# vim /opt/nsd.txt
3)在命令模式下完成下列操作
切换操作:G最后一行,5G第五行,gg第一行。
复制操作:按2yy复制2行,7G移动到第7行,p粘贴
删除操作:25G移动到第25行,200dd从此行开始删除200行(不够剩下全删)。
查找操作:gg第一行,/adm查找关键词adm,n跳转到下一个结果。
4)保存并退出编辑器
ZZ保存退出
步骤二:vim末行模式下的替换/设置操作
1)建立练习文件
将文件/etc/man_db.conf复制到/opt/目录下:
[root@svr7 ~]# cp /etc/man_db.conf /opt/
2)使用vim打开练习文件,输入:切换的末行模式
[root@svr7 ~]# vim /opt/man_db.conf
3)在末行模式下完成下列操作
输入 :set nu ,确认后显示行号
输入 :50,100 s/man/MAN/g,确认将第50~100行内的“man”替换为“MAN”
4)保存并退出编辑器
输入 :wq,确认后保存吧退出编辑器。