VI是Linux操作系统默认自带的,但是我们一般使用的是VIM(VI的升级版本)。
模式切换
- 输入
vim
或vim filename
直接进入命令模式,该模式支持删除dd、复制yy和粘贴p; - 命令模式下输入
i
、o
或a
将进入输入模式; - 命令模式下输入
:
将进入末行模式; - 末行模式和输入模式下使用
Esc
将进入命令模式。
光标移动
-
k/j/h/l
分别对应上下左右; -
0
移动到行首,$
移动到行尾; -
:n
表示跳转到第n行; -
gg
跳转到文本第一行,GG
跳转到最后一行; -
:/word
查找,Enter
后使用n/N
进行正向和反向查找; -
vim filename +n
打开文件的同时定位到第n行; - 将光标移动到需要查找的单词上,按
*
后使用n/N进行正向和反向查找;
文本编辑
- 命令模式下输入
i
和o
进入输入模式; -
dd
删除一行,ndd
删除n行,yy
复制当前行,nyy
复制n行; -
p
粘贴剪切板中的内容; -
u
回退之前的修改; -
r
替换单个字符,x
删除单个字符;
替换字符串
:0,$s/word1/word2/g # 全局替换,将第一行到最后一行中的word1全部替换成word2
:0,$s/word1/word2/gc # c表示confirm,在替换的时候会需要你再次确认
标签页和多窗口操作
都是多文件操作,不需要重复打开Vim。
标签页
命令 | 说明 |
---|---|
:tabedit filename | 新建标签页,并编辑 |
:tabprevious/:tabNext | 切换到上/下一个标签页 |
:tabfirst/:tablast | 切换到第一个/最后一个标签页 |
:tabclose | 关闭当前标签页 |
:tabonly | 关闭除当前标签外的其他标签页 |
多窗口
命令 | 说明 |
---|---|
:split filename | 水平分割窗口,并编辑 |
:vsplit filename | 垂直分割窗口,并编辑 |
Ctrl-h/l | 左右切换窗口 |
Ctrl-k/j | 上下切换窗口 |
:close | 关闭当前窗口 |
:ls
可以查看buffer中当前打开的文件。
网友评论