vim的工作模式
命令模式
使用vim编辑文件时,默认处于命令模式。在此模式下,可以使用上、下、左、右箭头或k、j、h、l命令进行光标移动,还可以对文件内容进行复制、粘贴、替换、删除等操作。
输入模式
进入输入模式的方法是输入i、a、o等插入命令,便携完成后按ecs键即可返回命令模式。
编辑模式
编辑模式的进入方法为:在命令模式下按“:”键,vim窗口的左下方会出现一个“:”符号,这时就可以输入相关的指令进行操作了,指令执行后会自动返回命令模式。
进入vim
使用vim打开文件
[root@localhost ~]# vim /test/vi.test
直接进入指定位置
[root@localhost ~]# vim +20 /test/vi.test
#直接进入第20行
[root@localhost ~]# vim +/nobody/ /test/vi.test
#直接进入“nobody”字符串所在行
vim的基本应用
常用的插入命令
- i:在当前光标所在位置插入随后输入的文本,光标后的文本相应向右移动。
- I:在光标所在行的行首插入随后输入的文本,行首是改行的第一个非空白字符,相当于光标移动到行首再执行i命令。
- a:在当前光标所在位置之后插入随后输入的文本。
- A:在光标所在行的行尾插入随后输入的文本,相当于光标移动到行尾再执行a命令。
- o:在光标所在行的下面插入新的一行。光标停在空行的行首,等待输入文本。
- O:在光标所在行的上面插入新的一行。光标停在空行的行首,等待输入文本。
光标移动命令
以字符为单位移动
- 上、下、左、右箭头键:移动光标。
- h、j、k、l:移动光标。
以单词为单位移动
- w:移动光标到下一个单词的单词首。
- b:移动光标到上一个单词的单词首。
- e:移动光标到下一个单词的单词尾。
移动到行尾或行首
- $:移动光标到行尾。
- 0或^:移动光标到行首。
移动到一行的指定字符处
- f字符:移动光标到第一个符合条件的字符处。
移动到匹配的括号处
- %:在匹配的括号间切换。
移动到指定行处
- n:移动光标到指定的行(n为数字)。
使用vim进行编辑
查找指定字符串
- /要查找的字符串:从光标所在行开始向下查找所需的字符串。
- ?要查找的字符串:从光标所在行开始向上查找所需的字符串。
- :set ic:查找时忽略大小写。
使用vim进行替换
- r:替换光标所在处的字符。
- R:从光标所在处开始替换字符,按ecs键结束。
使用vim进行删除、粘贴、复制
- x:删除光标所在处字符。
- nx:从光标所在位置向后删除n个字符,n为数字。
- dd:删除整行。如果之后粘贴,则此命令的作用。
使用vim撤销上一步操作
- u:撤销
如果不小心误删除了文件内容,可以通过“u”命令撤销刚才执行的命令,如果要撤销刚才的多次操作,则可以多输入几次“u”命令。
保存退出命令
- w:保存不退出
- q:不保存退出
- !:强制性操作