Vim/Vi常用操作(第二版)
周围同事不是用vim就是Emacs,你要是用一ultraedit,你都不好意思跟人家打招呼;什么插件呀,语法高亮呀,拼写检查呀,能给它开的都给它开着,就是一个字儿:酷。
你说这么牛B一东西,怎么着学会也得小半年吧。半年!入门都远着呢,能学会移动光标就不错了,你还别说耗不起,就这还只是左右移动!!!
Vim/Vi简介
所有的Linux/UNIX都会默认安装Vi,现在主流的Linux都会给默认安装vim。
Vim/Vi是一个功能强大的全屏幕文本编辑器, 是Linux/UNIX上最常用的文本编辑器, 它的作用是建立、编辑、显示文本文件;Vi几乎支持所有的语言。
Vim/Vi 没有菜单,只有命令。
官网:www.vim.org
Vim/Vi工作模式
插入命令
命令 作用
a 在光标后附加文本
A 在本行行尾附加文本
i 在光标前插入
I 在本行行首插入文本
o 在光标下面插入新的一行
O 在光标上面插入新的一行
定位命令
命令 作用
h 左移一个字符
j 下移一行
k 上移一行
l 右移一个字符
$ 移动到行尾
0 移动到行首
H 移动到屏幕上端
M 移动到屏幕中央
L 移动到屏幕下端
快速定位
命令 作用
:set nu 显示行号
:set nonu 取消行号
gg 移动到第一行
G 移动到最后一行
nG 到第n行
:n 到第n行
删除命令
x 删除光标所在字符
nx 删除n个字符
dd 删除所在光标所在行,ndd删除n行
dG 删除从当前行到文件末尾所有的行,包含当前行
D 删除光标所在处到行尾的内容
:n1,n2d 删除n1~n2行
复制命令
yy,Y 复制当前行
nyy,nY 复制n行
dd 剪切当前行,ndd剪切当前行及一下的n行
p 粘贴在当前行下
P[大写] 粘贴在当前行上
替换或取消命令
r 取代光标所在处字符
R 从光标所在处开始替换字符,直到Esc结束
u 取消上一步操作 ,首先你没有保存过,文档还是在内存中,还没有同步到硬盘。
替换或搜索命令
/string 向后搜索指定字符串,搜索时忽略大小写 :set ic ,取消:set noic
n 从前往后翻
N 从后往前翻
:%s/old/new/g 全文替换指定字符串,old为需要替换的关键词。
:n1,n2s/old/new/g 在一定范围内替换指定字符串
:%s/old/new/c 全文替换指定字符串,但是会询问
保存与退出
ZZ :wq的快捷键
:w new_filename 另存为指定文件
:wq! 强行保存修改并退出[root/文件所有者]
:q! 不保存退出