Linux的vim学习
- 普通模式 : 可完成光标移动,复制,粘贴,删除,重做,撤销等
- 编辑模式:[iIoOaArR]
- 命令模式 : “:” “/” “?”
一 普通模式下的操作
1.光标移动
- ^光标到行首 $光标到行尾 (其他自行学习)
2.复制,删除与粘贴
- x 剪切光标的字符 nx剪切当前光标往后n个字符
dd 删除当前行 yy复制当前行 p粘贴到光标的下一行
ndd nyy 对应nx
3.撤销与重做
- u撤销 Ctrl+r重做
二 编辑模式
1.a 当前光标的下一个位置开始插入
A 当前行尾插入
i 当前位置
o 当前行之后插入个新行开始
r 替换当前位置的字符
s 删除当前位置的字符并开始插入
三 命令模式
:set ic 搜索时忽略大小写
:set noic 取消搜索时忽略大小写 (默认)
:set nu 设置行号
:set nonu 取消行号(默认)
/xx 光标之后搜索xx字符 ?xx 光标之前搜索xx字符
n 查询下一个xx N查询上一个
:s/string1/string2/g #把当前行的string1替换成string2
:s/string1/string2/gc #把当前行的string1替换成string2 并提示确认
:%s/string1/string2/g #把所有的string1替换成string2
:%s/string1/string2/g #把所有的string1替换成string2 并提示确认
:n1,n2 s/string1/string2/g #n1到n2行的string1替换成string2
:n1,n2 s/string1/string2/gc #n1到n2行的string1替换成string2 并提示确认
可修改/etc/vimrc 进行vim编辑器的设置
ngg 可快速到第n行 普通模式下
-
保存不退出:
:w 保存文件但不退出
:w! 强制保存,不退出vi 编辑
:w file 将修改另存到file中,不退出 -
保存并退出:
:wq 保存文件并退出 同 ZZ
:wq! 强制保存文件并退出 -
不保存并退出:
:q 不保存文件并退出 同 ZQ
:q! 不保存文件并强制退出
:e! 放弃所有修改,从上次保存文件开始在编辑
四 vim中运行shell命令
:!command
:r!command 把命令的结果插入光标中的下一行
:sh 保留vim的状态 exit或者Ctrl+d回到vim中
五 其他常用功能
vim file1 file 可同时编辑多个文件
:n 文件名 可切换到下一个
- 区块选择
v 字符选择 光标经过的地方反白
V 行选择 光标经过的地方反白
Ctrl+v 区块选择 光标经过的地方反白(左下角显示 visual block)
y 复制反白的地方 p 粘贴 - 多窗口显示
同一屏幕上打开多个文件 也可打开相同文件
:sp [filename] 如果不指定文件名则再次打开当前文件
Ctrl+w+j 移动光标到下面窗口
Ctrl+w+k 移动光标到上面窗口