目录
vim/vi简介
vi/vim 的使用
操作实例
总结
vim/vi简介
所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。但是目前我们使用比较多的是 vim 编辑器。Vim 是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。 vim 则可以说是程序开发者的一项很好用的工具。
vi/vim 的使用
基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)
命令模式:用户用过vi filename 进入该模式,可进行阅读、剪切(dd ndd)、粘贴(p)、复制(yy)和恢复文本(u)。
输入模式:用户在命令模式下输入i便可进入,该模式下可以对文本进行自由编辑,输入ESC便可退出。
底线名列模式:用户在命令模式下输入:便可进入,该模式下可以输入
w(保存)、q(退出)、wq(保存并退出)、q!(不保存修改、强制退出)
set nu(显示行号)、set nonu(取消行号)
s/oldtext/newtext(单行文本替换,只是替换当前行的内容)
1,10s/oldtext/newtext 指定行范围(第1行到第10行,替换内容)
.表示当前行 .,10s/oldtext/newtext
$表示最后一行 .,$s/oldtext/newtext
%表示所有的行,即1.$ %s/oldtext/newtext 所有行,都要执行替换动作 (注意上面的替换都是替换某行的第一个匹配内容!!!!!非全局)
%s/oldtext/newtext/g g:global全局,即所有的匹配内容都要替换(如果你有一部分不想替换 就加上询问control)%s/oldtext/newtext/gc
%s/oldtext/newtext/gic i,ignore忽略大小写。
操作实例
1.通过vi 文件名 进入命令模式
lsf@bs-pc:~/2dir$ vi 2.c
2. 输入i进入输入模式,此刻能够发现 左下角有INSERT字样
3.写入文字 完成后点击ESC 返回命令模式
4.输入:进入底线命令模式 在此可以测试上面的部分命令
如:将全文的i替换成I 1,$s/i/I/g(下图为替换前,旨在展示左下角命令)
如:将全文的s替换成S %s/s/S/g(下图为替换后)
5.:wq 保存并退出
总结
本文只列举了部分指令,更多请跳转至菜鸟。
特别注意,在 vi/vim 中,数字是很有意义的!数字通常代表重复做几次的意思!(如,20dd:删除 20行) 也有可能是代表去到第几行的意思(如,2:跳到第二行)。