vi 的常用快捷命令

来源:互联网 发布:dice-51单片机开发系统 编辑:程序博客网 时间:2024/05/29 06:27

1. 进入输入状态的命令
a 从光标所在位置后面开始追加文字;
A 从光标所在行最后面的地方开始追加文字;
i 从光标所在位置前面开始插入文字;
I从光标所在行的行首开始插入文字;
o在光标所在行下新增一行;
O在光标所在行上方新增一行;

2. 删除命令
x删除光标所在字符;
dw删除光标所在整个单词;
dd删除光标所在的行;
ndd删除从当前行开始的n行的内容(说明n为整数1、2...等);
d $ 删除到某一行的结尾;
d G 从当前位置开始删除直到工作缓存区结尾的内容;

3. 修改命令
r 修改光标所在字符,只修改单个字符;
R 修改光标所在行的多个字符;

4. 删除和修改命令
s删除单个字符并进入输入状态;
S删除整行内容并进入输入状态;
c l 更改当前字符;
c w 修改到某个单词的结尾位置;
C 修改到某一行的结尾;
c c 修改当前行;
n c c 修改从当前行所开始的n行内容;
对于c开头的命令:.重复上一次修改!

5. 光标位置移动
1)字母间的移动
b移动到上个字的第一个字母;
w移动到下个字的第一个字母;
e移动到下个字的最后一个字母;


2)行间移动
0移动到光标所在列的最前面(注意这里是“零”不是o);
$ 移动到光标所在列的最后面
k:上移 nk 上移n行;
j:下移 nj 下移n行;
H 跳到第一行;
M 跳到中间一行;
L 跳到最后一行;


3)页面移动
[Ctrl] [d] 向下半页;
[Ctrl] [f] 向下一页;
[Ctrl] [u] 向上半页;
[Ctrl] [b] 向上一页;
4)特定字符的移动
fx 往右移动到 x 字符上
Fx 往左移动到 x 字符上
tx 往右移动到 x 字符前
Tx 往左移动到 x 字符后
(注意:以上四个命令中,其中x是键入的字符),例如,文件的内容为:“hello,world!”,如果想移到d上则按fd

分号,配合 f 和 t 使用,重复一次
,
逗号,配合 f 和 t 使用,反方向重复一次

6. 内容的查找
/content  向下查找;
?content 向上查找;
n配合/或?重复一次查找;
N配合/或?反向重复一次查找;
:set ic 查找时不区分大小写;

7. 内容的替换
:%s/old_word/new_word/g 这个指令用于在整个文件中替换特定字符串;
:s/old_word/new_word/g 这个指令用于在单行中替换特定字符串;

8. 内容复制和位置变换
y  复制(yank)
p  粘贴(paste)
nyy p :nyy 表示拷贝从光标行起的下n行内容,p表示paste,从刚复制的内容下行开始;
y$ p:从当前位置复制到行尾;
xp 交换两个字符位置;
:%g/^/m0/g 把文件内容反过来;

9. 退出保存
按esc键后,
:q  结束编辑(quit),如果不想存档而要放弃编辑过的文件则用:q!强制离开
:w  存档(write)
:wq 即存档后离开
:x 存档后离开

 


 

 

0 0
原创粉丝点击