"vim"是linux中非常强大,应用非常广的编辑方式。下面介绍一些"vim"的基本用法。以"/etc/passwd"为例。
1、vim命令模式
输入":set nu"可以添加行号,如下图所示。":set nonu"可以取消行号。":set mouse=a"可以添加鼠标选择。":set cursorline"可以在光标下显示行线。
以上的设定都只在当前的"vim"中生效,如果需要永久生效,则输入命令"vim /etc/vimrc",此文件为vim的配置文件,在此文件上加入以上参数,后续的"vim"都会生效,例如在配置文件中加入"set nu",以后使用"vim"时都会自动显示行号。
2、vim命令模式下的关键词搜索
"vim"为了使用方便,也在命令模式下有关键词搜索功能。"/关键字"可以快速查找文件,如图查找文件中的"bin"关键词。n向下匹配关键词,N向上匹配关键词。
3、vim命令模式下的字符管理
vim命令模式的字符管理主要提供文本的复制、删除、剪切功能。
字符的复制使用"y"。"yl"表示复制一个字母,"ynl"表示复制n个字母,"yw"表示复制一个单词,"ynw"表示复制n个单词,"yy"表示复制一行,"yny"表示复制n行,在复制完成后,在想要复制的目标位置按"p"完成复制,下图为使用"yy"复制一整行。将第4行复制为第5行。
字符的删除使用"d"。"dl"表示删除一个字母,"dnl"表示删除n个字母,"dw"表示删除一个>单词,"dnw"表示删除n个单词,"dd"表示删除一行,"dnd"表示删除n行,下图为使用"dd"删除一整行。删除了第1行。
字符的剪切使用"c"。"cl"表示剪切一个字母,"cnl"表示剪切n个字母,"cw"表示剪切一个>单词,"cnw"表示剪切n个单词,"cc"表示剪切一行,"cnc"表示剪切n行,在剪切后会进入到插入模式,在执行粘贴动作时一定要按"esc"退出插入模式,然后在目标位置按"p",下图为使用"cc"剪切一整行。
4、vim的可视化模式
在命令模式下按“ctrl+v”进入到可视模式,在可视模式下可以区域选择字符。如下图所示,选中了要加入字符的所在列,按按“I”进入插入模式,写入要加入的字符"XXXX",然后按"esc"就会在选中的整列前添加"XXXX"。
5、批量修改字符
在一个文本中,如果需要批量修改字符,则需要输入命令":%s/原有字符/替换后字符/g"如果没有"g",则只会替换每一行中出现的第一个原有字符,如下图所示,利用上述命令将"bin"全部变为"DDDDDDDDDDD"。
如果只需要替换前几行,则需要输入":1,ns/原有字符/替换后字符/g",例如下图将1至5行的"bin"替换为"DDDDDDDDDDDDDDD"。
6、vim的分屏功能
在进行"vim"编辑文本的时候,有时候会用到分屏功能,将"ctrl+w"一起按下,然后按"s"会出现上下分屏。
按"v"会出现左右分屏。
按"c"可以关闭光标所在的屏幕,按上下左右可以移动光标至指定屏幕。
在打开一个"vim"的情况下,输入":sp file2"可以同时编辑当前文件和"file2"。
7、vim光标移动
在命令模式下,输入":数字"可以移动到指定的行,按"G"可以移动至文件第一行,按"gg"可以移动至文件最后一行。
在插入模式下,按"i"可以在光标所在位置插入,按"I"可以在光标所在行行首插入,按"a"可以在光标所在字符的下一个位置,按"A"可以在光标所在行行尾等等。
8、vim的退出
在编辑完文件或者查看完文件后,没有对字符作任何操作时可以输入":q"退出,对字符作操作,但要放弃所有操作退出时输入":q!",输入":wq"可以保存退出,输入":wq!"强行保存退出,对超级用户及文件所有人生效。
9、其他
在文件编辑时,也可以通过命令"gedit file"来打开gedit的图形界面编写文本。
以上是"vim"的一些基本编辑功能,还有其他的功能需要在后面的学习中了解并熟悉。