vi是一款所有类Unix系统都内建的一款文本编辑器。随着Linux系统的发展,vi也被进一步开发变成了vim。vim 具有程序编辑的能力,字体是有颜色的,可以方便程序设计。如果你的Linux发行版只有vi,想使用vim,则需要安装。Ubuntu可以使用下面命令来安装vim编辑器。
sudo apt-get install vim
vi编辑器有三种模式,分别是命令模式,编辑模式,末行模式。当我们一开始打开vi的时候,它就处于命令模式。例如使用vi pipe.c这样就打开了pipe.c。打开以后,只能看,不能编辑,因为处于命令模式。在编辑模式的时候,我们才能够编辑文本。从文本模式无法直接切换到末行模式。需要按下ESC进入命令模式,然后按下:(英文冒号),就进入末行模式了。在末行模式下连按2次Esc就切换到了命令模式。或者是在末行模式下输入除了q以为的命令按下回车,也可切换到命令模式。在命令模式下进入编辑模式可以使用i,s,o,a按键。这就是三种模式之间的切换。
命令模式
在命令模式下,可以使用上下左右按键来移动光标。也可以使用h,j,k,l来移动光标位置。他们移动光标的方向如下所示。
k
h l
j
- 使用数字0可以跳到行首
- 使用符号$可以跳到行尾
- 连续按两次小写字母g,光标就能移动到当前文件的开始位置
- 使用大写字母G,光标就能移动到当前文件末尾
- 使用数字+G就可以跳到指定的行了。但是vi本身不显示行数,vim才显示行数。
- 使用小写字母x删除光标所在的字符
- 使用大写字母X删除光标前面的字符
- 连续按两次小写字母d,光标所在行就能被整行删除。
- 使用大写字母D可以删除光标所在行后面的内容
- 使用d+0可以删除光标所在行前面的内容
- 使用小写字母u撤销上一步操作,注意这个操作是撤销上一步操作,当你连按两次的时候,相当于恢复到按u之前。
vi的删除其实是剪切,当你删除某个内容以后,立即在某一行,按下小写字母p就能看到,你刚才删除的内容被粘贴在了这里。
- 使用小写字母p把内容粘贴到光标所在行的下一行
- 使用大写字母P把内容粘贴的光标所在行
- 连续按两次小写字母y,即可复制当前行的内容。如果想复制多行,可以使用数字+两次y。
在命令模式下,按下小写字母v进入可视模式,然后使用方向键或者h,j,k,l键来移动光标,选中你想选中的内容,然后进行相应的操作。如下所示。
可以看到选中了4行。
在可视模式下,复制是y,删除是d。
- 查找文本内容,在命令模式下输入反斜杠“/”。然后输入需要查找的内容,按下回车,查找就开始了。如果找不到,他会有一个提示。如果找到了,可以使用小写字母n向下依次查找,使用大写字母N向上依次查找。
- 查找文本内容,把光标移动到某个单词之上,然后按下#键,就能找到文本中所有的该单词。
编辑模式
- 使用小写字母a,进入编辑模式后,从光标后面开始插入内容
- 使用大写字母A,进入编辑模式后,从光标所在行的最后面插入内容
- 使用小写字母o,进入编辑模式后,从光标所在行的下一行开始插入内容
- 使用大写字母O,进入编辑模式后,从光标所在行的上一行开始插入内容
- 使用小写字母i,进入编辑模式后,从光标所在位置开始插入内容
- 使用大写字母I,进入编辑模式后,从光标所在行的第一个非空字符处开始插入内容
末行模式
- 使用小写字母w,保存文件
- 使用小写字母q,退出vi
- 使用wq,保存并退出vi