@9O`HX{9R%MBKMPKLHGKF5V.png

命令模式

光标跳转

上下左右: 上下左右:kjhl
#command:跳转#个字符

单词跳转: w:下个单词的词首
e:当前单词的词尾
b:上个单词的词首
#command:跳转#个单词

行首行尾跳转: ^:行首(非空白字符)
0:行首
$:行尾

行间移动: #G:跳转第N行 G
1G:跳转第1行 gg

文本编辑

删除全文: %d 或者 0,$d
删除文本: d:删除,配合光标跳转
d^
d$
d0
dw
de
db
dd:删除光标所在行 #dd:删除多行

复制文本:y,和删除的使用方式一样
粘贴命令:p
撤销命令: u:撤销前一次
#u:撤销前N次

搜索命令: 搜索操作:
:/ | ?
n:查找下一个匹配
N:跳转上一个匹配
y 复制 yy 3yy ygg yG (以行为单位)
d 剪切 dd 3dd dgg dG (以行为单位)
p 粘贴
x 删除光标所在的字符
D 从光标处删除到行尾
u undo撤销
^r redo重做
r 可以用来修改一个字符

进入其他模式

a 进入插入模式,光标停在选中字母后
i 进入插入模式,光标停在选中字母的位置
o 进入插入模式,光标停在选中一行的下面新建行中
A 进入插入模式,光标停在行尾 : 进入末行模式(扩展命令模式)
V 进入可视行模式
^v 进入可视块模式
R 进入替换模式

可视块模式

块插入 选择块,I 在块前插入字符,ESC
块替换 选择块,r 输入替换的字符
块删除 选择块, d|x
块复制 选择块,y

拓展命令模式

保存退出

:10 进入第10行
:w 保存
:q 退出
:wq 保存并退出
:w! 强制保存
:wq! 强制保存退出
:x 保存并退出 ZZ
:X 加密文档

查找替换

:范围 s/old/new/选项
:1,5 s/root/aaron/ 从1-5行的root 替换为aaron 每行替换第一个
:5,$ s/root/aaron/ $表示最后一行
:1,$ s/root/aaron/g = :% s/root/aaron/g %表示全文 g表示全局
:% s#/dev/sda#/var/ccc#g
:,8 s/root/aaron/ 从当前行到第8行
:4,9 s/^#// 4-9行的开头#替换为空
:5,10 s/./#&/ 5-10前加入#字符(.整行,&引用查找的内容)

读写另存为

:w 存储到当前文件
:w /tmp/aaa.txt 另存为/tmp/aaa.txt
:1,3 w /tmp/2.txt 将1-3行保存到文件
:r /etc/hosts 读入文件到当前行后
:5 r /etc/hosts 读入文件到第5行后

设置环境

临时设置
行号
显示:set number,简写为set nu
取消显示:set nonumber,简写为set nonu
括号匹配
匹配:set showmatch,简写为set sm
取消:set nosm
自动缩进
启用:set ai
禁用:set noai
高亮搜索
启用:set hlsearch
禁用:set nohlsearch
语法高亮
启用:syntax on
禁用:syntax off
忽略字符的大小写
启用:set ic
不忽略:set noic
获取帮助 : help

永久环境
/etc/vimrc 影响所有系统用户
~/.vimrc 影响某一个用户

多文件编辑

[root@xwz ~]# vim -O ls.txt /etc/hosts ^ww切换
[root@xwz ~]# cp /etc/hosts hosts1
[root@xwz ~]# vimdiff /etc/hosts hosts1

设置环境

临时设置

  1. 行号
  2. 显示:set number,简写为set nu
  3. 取消显示:set nonumber,简写为set nonu
  4. 括号匹配
  5. 匹配:set showmatch,简写为set sm
  6. 取消:set nosm
  7. 自动缩进
  8. 启用:set ai
  9. 禁用:set noai
  10. 高亮搜索
  11. 启用:set hlsearch
  12. 禁用:set nohlsearch
  13. 语法高亮
  14. 启用:syntax on
  15. 禁用:syntax off
  16. 忽略字符的大小写
  17. 启用:set ic
  18. 不忽略:set noic
  19. 获取帮助
  20. : help

永久环境

D)WV}}S25V@%$$12QVV7~T3.png