您的位置:首页 > 其它

vi/vim使用小结

2015-04-01 20:07 218 查看
1、三种模式:

•Command mode 命令模式,用于输入命令,简单更改。

•Insert mode 插入模式,用于插入文本。

•Last line mode 末行模式,用于输入命令、视化操作、查找替换等。

2、七种常用操作:

输入文本 移动光标 删除文本

替换文本 搜索文本 其它辅助操作

保存文件, 退出编辑程序

3、详解:

文本:
• i (insert) 在光标前插入文本
• I 在光标所在行首插入文本
• a (append) 在光标后加入文本
• A 在光标所在行尾加入文本
• o (open) 在光标所在行下面新加一行
• O 在光标所在行上面新加一行
•ESC 退出文本输入模式, 返回命令模式

光标:

•← ↓ ↑ → 光标左下上右移动
•h j k l 光标左下上右移动
•home end pageup pagedown
•^ 光标从当前位置移到本行行首
•$ 光标从当前位置移到本行行尾
•+ 光标下移一行
•- 光标上移一行
•空格键 光标左移
•退回键 光标右移
• 0 把光标移到当前行的第一个字符处。
•$ 把光标移到当前行的最后一个字符处。

•nG 将光标移至行号所指定的行的行首
•) 由光标所在位置至下一个句子的第一个字元。
•( 由光标所在位置至该句子的第一个字元。
•{ 由光标所在位置至该段落的最后一个字元。
•} 由光标所在位置至该段落的第一个字元。

•H命令:该命令将光标移至屏幕首行的行首.若在H命令之前加上数字n,则将光标移至屏幕第n行的行首。
•M命令: 该命令将光标移至屏幕显示文件的中间行的行首。
•L命令:该命令将光标移至屏幕显示文件的底行的行首。
•G命令:该命令将光标移至该文件的最后一列

删除:

•字符删除命令:x dh
•字和行删除命令:dw db dd d$ d0 <n>dd
•文本块删除命令:d) d( d} d{
•相对屏幕删除:dH dM dL

•x: 删除光标所在的文字
•nx: 删除光标后面的n个字符
•X: 删除光标前面的一个字符
•nX: 删除光标前面的n个字符
•dd: 删除光标所在行
•ndd:删除光标所在行向下数n行

替换:

【替换所有的abc为bcd】

:%s/abc/bcd/g

【将文件中所有/usr/bin目录替换成/home】

:%s/\/usr\/bin/\/home/g

【在每行开头加入一个单词linux】

:%s/^/linux/g

【在每个单词后面加上一个s】

:%s/$*\>/s/g

•Ctrl + f向后滚一页。
•Ctrl + d向后滚半页。
•Ctrl + b向前滚一页。
•Ctrl + u向前滚半页。
•Ctrl + e屏幕向下滚一行。
•Ctrl + y屏幕项上滚一行。

tips(在命令模式下):

删除整行:dd或ndd(如5dd就是删除光标下面的5行内容)

粘贴:小p(粘贴到光标的后面)大P(粘贴到光标的前面)

复制:yy或nyy(如3yy就是复制此光标下的3行内容)

撤消与重复:u(撤消前一条命令);“.”(重复最后一条命令)

•命令方式下输入yy或nyy,n是一个具体的整数:复制行
•将光标移到要复制的地方,按p键粘贴。
•u 恢复最后一个指令之前的结果。
•U 恢复光标该行之所有改变。

末行模式:

•:q 系统退出vi返回到shell。在用此命令时,若编辑的文件没有被保存,则vi在窗口的最末行给出提示信息。
•:q! vi放弃所作修改而直接退到shell下。
•:wq 先保存文件,然后再退出vi返回到shell。强制更新文件的修改时间
•:x 该命令的功能与命令模式下的ZZ命令功能相同。写入文件并退出。仅当文件被修改时才写入,并更新文件修改时间,否则不会更新文件修改时间。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: