vim命令详解

vim的3种模式

  • 命令模式 其他两个模式只能有命令模式互相切换

  • 末行模式

  • 插入模式

命令模式 进入文本编辑状态时 默认进入的模式

输入冒号(:)可进入末行模式 按Esc可返回命令模式 输入(a 或 i 或 o) 均可进入插入模式 按Esc可返回命令模式

插入模式

wq 保存并退出 q! 强制不保存并退出

编辑技巧

命令模式

移动光标:上下左右4个箭头 光标行内跳转:

跳转到行首:Home 或 ^、数字0
跳转到行尾:End 或 $  

全文翻页:

PageUp 向上翻页
PageDown 向下翻页  

光标行间跳转:

1G 或 gg 跳转到文件首行
G 跳转到文件的末尾行

复制 yy  3yy

粘贴 p(之后) P(之前)

删除 dd   3 dd  

d^ 删除光标处到行首 d$ 删除光标处到行尾 x 或Delete 删除光标处的单个字符

大写的C:删除光标处到行尾所有的内容,并且进入插入模式

小写的u:可以撤销 大写的U:撤销对当前行的所有修改 ctrl + r:取消前一次撤销操作

查找 /text 不区分大小写 \c

大写N 向上走 
小写n 向下走

保存 ZZ 保存修改并退出

末行模式

保存 :w 放弃已有更改后退出 :q! 保存已有更改后退出 :wq 或者 😡

文件操作 :w /root/newfile 另存为其他文件

:r /etc/filesystems 读取其他文件内容

文本查找与替换

行内替换

:s/old/new 替换当前行第一个“old”
:s/old/new/g 替换当前行所有的“old”

区域内替换

:n,m s/old/new/g 替换第n到m行所有的“old”
:% s/old/new/g 替换文件内所有的“old”

开关参数的控制

:set nu 显示行号 :set nonu 不显示行号

:set ai 自动缩进(以上一行作为缩进) :set noai 取消自动缩进

评论