Vim常用命令

Vim模式

  1. 正常模式(按Esc)

  2. 编辑模式(正常模式下 按i或a)

  3. 可视模式(正常模式下 按v进入

  • 打开、关闭、保存

:e filename        # 打开文件
:w                 # 保存文件
:q                 # 退出 Vim
:q!               # 强制退出(不保存)
:sav filename      # 另存为
.                  # 重复在正常模式下进行的最后更改
:split file        # 在新窗口中打开文件
:bn                # 切换到下一个文件
:bp                # 切换到上一个文件
:args              # 查看当前打开的文件列表,当前正在编辑的文件会用[]括起来
:e ftp://192.168.10.76/abc.txt    # 打开远程文件,比如ftp
:open file         # 在vim窗口中打开一个新文件
:split file        # 在新窗口中打开文件
  • 移动命令

h                # 左移 (20h就是左移20个,10x就是删除10个字符)
l                # 右移
k                # 上移
j                # 下移 (20j就是下移20行)
w                # 向前移动一个单词(光标停在单词首部),如果已到行尾,则转至下一行行首。
b                # 移动到当前行第一个,如果在第一个位子,则上移
e                # 跟 b 刚好相反
0                # 移动到当前行第一个或者Home
L/G/[[           # 移到最后行第一个
gg/]]            # 移到首行第一个
$                # 移动到行尾
# 跳到指定行,冒号+行号,回车,比如跳到240行就是 :240回车。另一个方法是行号+G,比如230G跳到230行
Ctrl + e         # 向下滚动一行
Ctrl + y         # 向上滚动一行
Ctrl + d         # 向下滚动半屏
Ctrl + u         # 向上滚动半屏
Ctrl + f         # 向下滚动一屏
Ctrl + b         # 向上滚动一屏
%                #
  • 编辑

i                # 在当前位置生前插入
I                # 在当前行首插入
a                # 在当前位置后插入
A                # 在当前行尾插入
o                # 在当前行之后插入一行
O                # 在当前行之前插入一行
  • 复制、粘贴、剪切

yy              # 拷贝当前行
nyy             # 拷贝当前后开始的n行,比如2yy拷贝当前行及其下一行。
p               # 在当前光标后粘贴,如果之前使用了yy命令来复制一行,那么就在当前行的下一行粘贴。
shift+p         # 在当前行前粘贴
:1,10 co 20     # 将1-10行插入到第20行之后。
:1,$ co $       # 将整个文件复制一份并添加到文件尾部。
ddp             # 交换当前行和其下一行
xp              # 交换当前字符和其后一个字符
  • 替换

ra                    # 将当前字符替换为a,当期字符即光标所在字符。
s/old/new/            # 用old替换new,替换当前行的第一个匹配
s/old/new/g           # 用old替换new,替换当前行的所有匹配
%s/old/new/           # 用old替换new,替换所有行的第一个匹配
%s/old/new/g          # 用old替换new,替换整个文件的所有匹配
:10,20 s/^/    /g     #在第10行知第20行每行前面加四个空格,用于缩进。
ddp                   # 交换光标所在行和其下紧邻的一行。
  • 搜索

f                    # fx将找到光标后第一个为x的字符,3fd将找到第三个为d的字符
F                    # 与 f 相反
/text               # 查找text,按n健查找下一个,按N健查找前一个。
?text               # 查找text,反向查找,按n健查找下一个,按N健查找前一个。
###vim中有一些特殊字符在查找时需要转义  .*[]^%/?~$
:set ignorecase     # 忽略大小写的查找
:set noignorecase   # 不忽略大小写的查找
######如果一个词很长,可以将光标移动到该词上,按*或#键即可以该单词进行搜索,相当于/搜索。而#命令相当于?搜索。
:set hlsearch       # 高亮搜索结果,所有结果都高亮显示,而不是只显示一个匹配。
:set nohlsearch     # 关闭高亮搜索显示
:nohlsearch         # 关闭当前的高亮显示,如果再次搜索或者按下n或N键,则会再次高亮。
:set incsearch      # 逐步搜索模式,对当前键入的字符进行搜索而不必等待键入完成。
:set wrapscan       # 重新搜索,在搜索到文件头或尾时,返回继续搜索,默认开启。
  • 撤销、反撤销

u                     # 撤销(Undo)
U                     # 撤销对整行的操作
Ctrl + r              # 反撤销,即撤销的撤销


转载于:https://my.oschina.net/Shay/blog/496588

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值