资源描述
(完整版)linux的vim编辑器使用详解
使用vim文档编辑器
配置文件是Linux系统的显著特征之一,其作用有点类似于Windows 系统的注册表,只不过注册表是集中管理,而配置文件采用了分散的自由管理方式.为了更好地管理和维护系统中的各种配置文件,掌握Linux命令行最流行的编辑器——vim是非常必要的。
1.vim编辑器的命令模式操作(光标跳转、查找、复制粘贴等)
2.vim编辑器的末行模式操作(存盘退出、查找替换、系统设置等)
3.vim编辑器的扩展应用(多文件编辑、可视化选择等)
1.熟悉vim编辑器的模式
1)vim编辑器的工作模式
新启动vim编辑器程序后,默认进入的状态称为“命令模式”,命令模式下可完成一些查找、光标移动等操作,不对文件做手动编辑;若要手动录入大量文本,应该进入到vim编辑器的“输入模式”;除此以外,还有一种特殊的模式可以执行文件保存、退出编辑器、查找替换等操作,称为“末行模式”.
vim编辑器三种模式之间的切换关系、按键操作如图—6所示。
图-6
2)启动vim编辑器程序
不带任何参数,直接运行vim命令,将会打开一个空文件.如果在支持中文的命令行终端,可以看到关于vim程序的版本及相关声明信息,如图-7所示。输入 :q 后按Enter键可退出vim编辑器.
图-7
也可以指定目标文件作为参数,在vim编辑器中打开。例如,将系统配置文件/etc/inittab复制到当前目录下,改名为vitest。txt,作为vim练习素材,然后用vim编辑器打开vitest。txt文件,执行:
1 [root@svr5 ~]# cp /etc/inittab vitest.txt
2 [root@svr5 ~]# vim vitest。txt
之后将直接看到vitest。txt文件的内容,如图—8所示:
图-8
3)命令模式—-〉输入模式
直接按i键,将从命令模式切换到输入模式,输入点位于当前光标位置之前,编辑器左下角显示“—— 插入 —-”的标记,如图—9所示。若按a键,则输入点位于光标处之后;按o键在光标处之后新增一行,输入点移至新行行首。
图-9
4)输入模式—->命令模式
在处于“-— 插入 -—”状态的输入模式下,按Esc键可以返回到命令模式。
5)命令模式——〉末行模式
直接输入冒号 : ,即可切换到末行模式,左下角出现 : 提示符,如图-10所示,在此提示符后面可以输入vim编辑器的各种末行指令。
图-10
6)从末行模式-->命令模式
在处于“: ”提示符状态的末行模式下,按Esc键可以返回到命令模式.
7)从输入模式--〉末行模式,或者从末行模式-—〉输入模式
不支持直接切换,必须先Esc返回命令模式,再参考前述操作切换。
2.命令模式下的基本操作
1)光标跳转
按gg跳转至文件第一行的行首、按G跳转至文件最后一行的行首。例如,前面用vim打开vitest。txt文件后,输入大写字母G(即Shift+g),光标直接跳转至最后一行的“x:5:respawn .。 。。”位置处,如图—11所示。
图-11
此时再输入gg,光标直接跳转至第一行的“#”开头位置处,如图-12所示。
图-12
2)复制、粘贴、删除操作
按向下箭头键将光标移动至“# 1 — Single user mode”所在行,如图-13所示,此后再按2yy,将会复制光标处开始的2行内容(若直接按yy则只复制一行) 。
图-13
按一次向下箭头键,将光标移动至“# 3 — Full multiuser mode”所在行,然后按下p,完成粘贴操作,效果如图-14所示。
图-14
向下移动光标至“# 3 — Full multiuser mode“所在行,按下dd键,将会删除当前的整行内容,删除后效果如图-15所示。若要删除2行,可按2dd,其余类推。
图-15
3)查找关键词
按gg键回到文件开头,输入 /initdefault 可在整个文件内查找“initdefault“关键词,并高亮显示,如图-16所示.
图-16
按 n 键跳转至第2个匹配结果,再按一次n键跳转至第3个匹配结果,如图—17所示。
图-17
3.末行模式下的基本操作
1)存盘及退出
末行指令 :w保存当前修改, :q 退出;如果是先保存再立即退出,可执行 :wq 。如果当前文件已经被修改,直接执行 :q 将无法退出,除非执行 :q! 表示强行退出(放弃所做的修改) .
比如,在前面对vitest。txt文件做了复制、粘贴等修改操作以后,输入 : 进入末行模式,然后执行末行指令 :q 时,会提示“已修改但尚未保存“,如图-18所示。
图-18
重新执行末行指令 :wq (或者 :x ),可以先保存更改后再退出,如图19所示。
图-19
2)字符串查找替换
重新用vim打开vitest.txt文件,执行末行指令 :2跳转到第2行,为了方便定位,可执行末行指令 :set nu 显示行号,如图—20所示。
图-20
执行末行指令 :s /i/I ,将当前行的第1个小写字母 i 替换为大写的 I ,如图-21所示 .
图-21
执行末行指令 :s /i/NB/g ,将当前行所有的小写字母 i 替换为大写的 NB ,如图—22所示。
图-22
执行末行指令 :3,5 s /i/==/g ,将第3-5行内所有的小写字母 i 替换为 == ,如图-23所示。
图-23
执行末行指令 :% s /i/XXYY/g ,将整个文件内所有的小写字母 i 替换为 XXYY ,如图—24所示。
图-24
3。4 扩展
1.Vim编辑器的扩展应用
1)可视化选择
在vim vitest.txt命令模式下,将光标跳至第9行“# Default runlevel..“处,按下小写的v键以进入可视化选择状态,左下角会显示”-— 可视 ——“.然后按向下箭头键移动光标到第11行、向右移动箭头键到”user mode“之前,如图—25所示,按下yy键完成复制.
图-25
按Esc键返回命令模式,再按下gg键跳转至文件开头,按下大写的P键执行粘贴,刚刚复制的内容将会粘贴到文件开头,如图—26所示.在命令模式下也可以存档,按ZZ键(即Shift+zz键)保存退出。
图-26
2)使用。vimrc配置文件
执行以下操作,创建/root/。vimrc配置文件:
3 [root@svr5 ~]# vim /root/。vimrc
4 set nu //在文件内录入此行内容
重新使用vim编辑器打开任意文本文件(如install.log),会发现已经自动显示出行号了,如图-27所示,不需要手动执行“:set nu”指令。
图-27
3)使用多窗口编辑
执行以下操作,同时打开三个文件:
5 [root@svr5 ~]# vim mw1。txt mw2。txt mw3.txt
这样进入vim编辑器后,默认看到的是第1个文件mw1。txt.执行末行指令 :all,即可看到所有已打开的文件(分成3栏窗口),如图-28所示。
图-28
此时输入点停留在第1个文件内,按i键进输入模式,录入内容AAAA;然后按Esc键返回命令模式,按快捷键Ctrl+ww切换到第2个文件mw2。txt,继续按i键进输入模式并录入内容“BBBB”;然后再按Esc键返回命令模式,按快捷键Ctrl+ww切换到第3个文件mw3.txt,继续按i键进输入模式并录入内容“CCCC",如图-29所示。
图-29
最后按Esc键切换到命令模式,执行 :wq 保存当前文件(重复3次保存刚刚编辑的这三个文件) ,回到命令行环境以后,可检查刚刚编辑的文件内容:
6 [root@svr5 ~]# cat mw1.txt
7 AAAA
8 [root@svr5 ~]# cat mw2.txt
9 BBBB
10 [root@svr5 ~]# cat mw3.txt
11 CCCC
展开阅读全文