vim常用的命令
程序员文章站
2022-06-11 08:36:53
打开/退出 插入 移动 以上四个命令可以配合数字使用,比如10j就是向下移动10行,10h就是向左移动10个字符。 删除 跳转 编辑 查找 替换 多文件操作 ......
打开/退出
vim -r file1 只读打开 :qall 退出所有文件 :wq 写入并退出
:x 写入并退出 :q! 强制退出
插入
i 在当前位置生前插入 i 在当前行首插入 a 在当前位置后插入 a 在当前行尾插入 o 在当前行之后插入一行 o 在当前行之前插入一行
移动
h 左移一个字符 l 右移一个字符 k 上移一个字符 j 下移一个字符
以上四个命令可以配合数字使用,比如10j就是向下移动10行,10h就是向左移动10个字符。
删除
dd 删除当前行 dj 删除当前行和上一行 dk 删除当前行和下一行 10dd 删除当前行开始的共10行 d 删除当前字符至行尾
跳转
gg 跳转到文件头 g 跳转到文件尾 gg=g自动缩进 (非常有用) ctrl + d 向下滚动半屏 ctrl + u 向上滚动半屏 ctrl + f 向下滚动一屏 ctrl + b 向上滚动一屏 冒号+行号,跳转到指定行;比如:120,跳转到120行; $ 跳转到行尾 跳转到行首
编辑
u 撤销 ctrl + r 重做 yy 复制当前行 按v(逐字)或v(逐行)进入可视模式,然后用jklh命令移动即可选择某些行或字符,再按y即可复制任意部分 p 粘贴在当前位置 另外,删除在vim里面就是剪切的意思,所以dd就是剪切当前行,可以用v或v选择特定部分再按d就是任意剪切了
查找
/text 查找text,按n健查找下一个,按n健查找前一个 ?text 查找text,反向查找,按n健查找下一个,按n健查找前一个 :set ignorecase 忽略大小写的查找 :set noignorecase 不忽略大小写的查找
替换
:s/old/new/ 用old替换new,替换当前行的第一个匹配 :s/old/new/g 用old替换new,替换当前行的所有匹配 :%s/old/new/ 用old替换new,替换所有行的第一个匹配 :%s/old/new/g 用old替换new,替换整个文件的所有匹配 也可以用v或v选择指定行,然后执行
多文件操作
vim file1 file2 file3 ... 同时编辑多个文件 :split 将窗口分成上下两个子窗口,对应两个不同的文件 :vsplit 将窗口分成左右两个子窗口,对应两个不同的文件 :open file4 打开新文件 :bn 切换到下一个文件(当前窗口) :bp 切换到上一个文件(当前窗口) ctrl-w h 移动到窗口左边 ctrl-w j 移动到窗口下边 ctrl-w k 移动到窗口上边 ctrl-w l 移动到窗口右边