您的位置:首页 > 运维架构 > Linux

Linux vim编辑命令总结

2012-07-29 17:40 232 查看
Linux vim编辑命令总结

1. 启动vim编译器

vim filename 打开原有的文件或创建一个新文件。

vim 打开一个新文件,在编辑过程中或结束编辑时再指定文件名。

vim –r filename 恢复因意外停机或终端连接中断而未及时保存最终编辑结果的文件。

view filename 以只读方式打开文件。除了不能把编辑处理的最终结果写入文件保存之外,view的所有编辑功能均与vim无异。

2. 光标定位命令

←↑↓→ 将光标左移、上移、下移或右移一个字符(行)位置。

h j k l 同上。

- 光标上移一行。

Enter键(或加号“+”)光标下移一行。

退格键 将光标左移一个字符位置。

空格键 将光标右移一个字符位置(命令模式)。

Ctrl+F 往下(文件结尾方向)滚动一屏。

Ctrl+B 往上(文件开始方向)滚动一屏。

Ctrl+D 往下滚动半屏。

Ctrl+U 往上滚动半屏。

Ctrl+E 编辑窗口中的文件内容整体上移一行。

Ctrl+Y 编辑窗口中的文件内容整体下移一行。

w 将光标右移一个字。光标停留在下一个字的字首位置。

W 将光标右移一个字。光标停留在下一个字的字首位置(即使两个字之间存在标点符号)。

b 将光标左移一个字。光标停留在下一个字的字首位置。

B 将光标左移一个字。光标停留在下一个字的字首位置(即使两个字之间存在标点符号)。

e 把光标移至当前所在字(或下一个字)的最后一个字符位置。

E 同上,只是以空格字符作为字的分隔符。

^ 把光标移至当前行的起始位置,也即当前行的第一个非空白字符位置

0(零) 同上

$ 把光标移至当前行的行尾,也即当前行的最后一个字符位置。

H 把光标移至编辑窗口顶部第一行的行首位置。

M 把光标移至编辑窗口中间一行的行首位置。

L 把光标移至编辑窗口底部最后一行的行首位置。

3. 插入文本数据

a 在光标当前所在字符位置的后面输入文本数据。

A 在光标当前所在行的行尾(也即最后一个字符位置)后面输入文本数据。

i 在光标当前所在字符位置的前面输入文本数据。

I 在光标当前所在行的行首(也即在第一个非空白的起始字符)前面输入文本数据。

o 在光标当前所在行下面的行首位置输入文本数据。

O 在光标当前所在行上面的行首位置输入文本数据。

4. 修改文本

C 替换当前文本行光标所在字符位置之后的所有数据,以Esc键结束。

cw 替换光标当前所在字符位置及之后的整个字或部分字,以Esc键结束。

cc 替换当前行,或从当前行开始的n行文本,以Esc键结束。

s 替换光标当前所在位置的单个字符,或从光标当前位置开始的n个字符,以Esc键结束。

S 替换当前行,以Esc键结束。

r 替换光标当前所在位置的单个字符。

r<Enter> 断行。也可使用“a”或“i”命令加Enter及Esc键实现。

R 从光标当前所在的字符位置开始,替换随后的所有字符,直至按下Esc键。

xp 交换字符位置。交换光标当前所在位置开始字符位置。

~ 转换光标当前所在位置字符的大小写。

u 撤销最近一次执行的编辑命令,或依次撤销先前执行的编辑命令。

:u 同上(ex编辑命令)。

U 撤销施与当前文本行的编辑处理。

5. 删除文本

x 删除光标当前所在位置的字符,或删除从光标当前位置开始的n个字符。

X 删除光标当前所在位置的前一个字符,或删除光标当前所在位置之前的n个字符。

dw 删除光标当前所在位置的一个整字或部分字符。如果光标在字首,则删除整字。如果光标在字的中间任何位置,则删除光标位置及之后的字符。

dd 删除光标当前所在的文本行,或删除从当前行开始的n个文本行。

D 删除当前文本行从光标位置开始之后的所有字符。

dG 删除从当前行开始直至文件最后一行的所有文本行。

d
G 删除从文件的第n行开始直至当前行的所有文本行。

:line#1,line#2 d 删除从指定的行号line#1到line#2之间的所有文本行。

6. 复制与移动文本

yy 复制光标当前所在的文本行,或从当前行开始的n个文本行。

Y 同上。

p(小写) 把复制或删除(“dd”命令)的文本行粘贴到光标所在行的下面。

P(大写) 把复制或删除(“dd”命令)的文本行粘贴到光标所在行的上面。

:line#1,line#2 co line#3 把第line#1~line#2行复制到第line#3行之后。

:line#1,line#2 m line#3 把第line#1~line#2行移至第line#3行之后。

7. 设置行号显示

:set nu 在编辑期间增加临时行号。

:set nonu 撤销行号显示(默认情况)。

Ctrl+G 显示当前文件的名字和当前文本行的行号。

8. 设置大小写字母检索准则

:set ic 检索字符串时忽略字母的大小写。

:set noic 检索字符串时严格区分字母的大小写(默认情况)。

9. 定位文本行

G 将光标移至文件的组后一行。

G 将光标移至文件的第n行。

10. 检索与替换

:/string 向前(文件结尾方向)检索指定的字符串。

:?string 向后(文件开头方向)检索指定的字符串。

n 将检索方向找出下一个匹配的字符串。

N 逆检索方向找出前一个匹配的字符串。

:[g]/search/s//replace/[g][c] 检索并替换字符串。

11. 清除屏幕

Ctrl+L 清除因其他进程的输出信息而干扰的编辑窗口。

12. 合并文件与合并行

:r filename 在光标所在行之后插入指定文件的内容。

: line#1 r filename 在第line#1行之后插入指定文件的内容。

J 把相邻的两个文本行个并为一行(把下一行合并到光标当前所在行的后面)。

13. 保存编辑结果与退出vim编辑器

:w 保存编辑处理后的结果(把内存缓冲区中的数据写到文件中)。

:w! 强制保存编辑处理后的结果。

:wq 保存编辑处理后的结果,然后退出vim编辑器。

:wq! 强制保存编辑处理后的结果,然后退出vim编辑器。

ZZ 保存编辑处理后的结果,然后退出vim编辑器。

:q 在未做任何编辑处理时,可以使用此命令退出vim编辑器。

:q! 强制退出vim编辑器,放弃编辑处理后的结果。

:w filename 把编辑处理后的结果写到指定的文件中保存。

:w! filename 把编辑处理后的结果强制写到指定的文件中保存,即使文件已经存在。

:wq! filename 把编辑处理后的结果强制写到指定的文件中保存,即使文件已经存在,然后退出vim编辑器。

14. 其他

;f 或 Ctrl+G 显示文件的名字、编辑状态、文件总的行数、光标当前所在行号和列号,以及当前行之前的行数占整个文件总行数的百分比。

Ctrl+V 输入控制字符。

@import url(http://www.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: