vim linux下的文本编辑器,可以执行输出、删除、查找、替换、块操作等众多文本操作。 vim没有菜单,只有命
令,且命令繁多。
vim 有三种模式
- 命令模式
- 输入模式
- 末行模式
三种模式切换与关系:
命令模式:
使用vim打开文件的时候,就进到命令模式。
- vim filename :打开或新建文件,并将光标置于第一行首
- vim+n filename :打开文件,并将光标置于第n行首
- vim + filename :打开文件,并将光标置于最后一行首
- vim +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处
- vim -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename
- vim filename….filename :打开多个文件,依次进行编辑
命令模式下只能输入命令不能进行编辑,只有进入输入模式才能做文件编辑。
移动光标类命令:
- h :光标左移一个字符
- l :光标右移一个字符
- k或Ctrl+p:光标上移一行
- j或Ctrl+n :光标下移一行
- w或W :光标右移一个字至字首
- b或B :光标左移一个字至字首
- 0:(注意是数字零)光标移至当前行首
- $:光标移至当前行尾
- Ctrl+f 向文件尾翻一屏
- Ctrl+b 向文件首翻一屏
- home 移动至行首
- end 移动至行末
- G 跳转至文档最末尾
- gg 跳转至文档首行
- nG n是一个数字,表示跳转至第几行。
删除复制命令
- dd 删除光标所在行
- d0 删除光标所在行光标前面的内容(数字0)
- d$ 删除光标所在行光标末尾的内容
- 3 dd 删除光标所在行包含当前行后面3行内容(数字可以替换成自己想要删除的行数多少)
- yy 复制
- 2 yy 复制光标所在行开始2行内容
- p 粘贴,删除的内容也可以直接用p粘贴
- u 撤销
- ctrl r 反撤销
插入模式
插入文本类命令:
i :在光标前
I :在当前行首
a:光标后
A:在当前行尾
o:在当前行之下新开一行
O:在当前行之上新开一行
末行模式
在命令模式下,用户按”:”键即可进入末行模式 退出及保存:
- :q 退出
- :q! 退出并不保存
- :w 保存
- :wq 退出并保存
- :x 退出并保存
查找替换:
- /string 在文本中查找string
- n 下一个
- N 上一个
- :n1,n2s /word1/word2/g 将n1行到n2行中word1替换成word2, g表示全部替换,不加g则只替换匹配中的第一个
:n1,n2s /word1/word2/g
- :1,$s /word1/word2/g 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 (常用)
:1,$s /www/ddd/g
- :1,$s /word1/word2/gc 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !且在取代前显示提示字符给用户确认 是否需要替换(常用)
:1,$s /word1/word2/gc
显示行号
- :set nu 显示行号
- :set nonu 取消显示行号
可视模式
- v:按字符移动,选中文本
- V:按行移动,选中文本可视模式可以配合d,y,>>,<<实现对文本块的删除,复制,左右移动
vim分屏操作
分屏操作:
sp: 上下分屏,后可跟文件名
vsp: 左右分屏,后可跟文件名
Ctr+w+w: 在多个窗口切换
启动分屏:
1.使用大写O参数进行垂直分屏
$ vim -On file1 file2 ...
2.使用小写o参数进行水平分屏
$ vim -on file1 file2 ...
注: n是数字,表示分屏的数量,n要大于等于文件个数
关闭分屏
1.关闭当前窗口
ctrl+w c
2.关闭当前窗口,如果只剩最后一个,则退出vim
ctrl+w q
编辑中分屏
1.上下分割当前打开的文件
ctrl+w s
2.上下分割,并打开一个新的文件
:sp filename
3.左右分割当前打开的文件
ctrl+w v
4.左右分割,并打开一个新的文件
:vsp filename
分屏编辑中光标的移动
vi中的光标键是h,j,k,l,要在各个屏之间切换,只需要先按一下ctrl+w
1.把光标移动到上边的屏
ctrl+w k
2.把光标移动到下边的屏
ctrl+w j
3.把光标移动到右边的屏
ctrl+w l
4.把光标移动到左边的屏
ctrl+w h
5.把光标移动到下一个的屏
ctrl+w w
移动分屏
1.向上移动
ctrl+w K
2.向下移动
ctrl+w J
3.向右移动
ctrl+w L
4.向左移动
ctrl+w H
屏幕尺寸
1.增加高度
ctrl+w +
2.减少高度
ctrl+w -
3.让所有屏的高度一致
ctrl+w =
4.左加宽度
ctrl+w >
5.右加宽度
ctrl+w <
6.右增加n宽 (如:n=30)
ctrl+w n <
Vim操作脑图(来自网络)
Vim键盘(来自网络)
查看原文:linux vim编辑器使用
关注公众号 "字节航海家" 及时获取最新内容