vi 三种模式:命令行模式、插入模式、尾行模式。
命令行模式
命令模式,也是默认的,按下esc即可,可以执行移动光标,删除等操作。常用操作如下:
类别 | 分类 | 按键 |
|
光标移动 | 字符级 | h | 左移动 |
| j | 下 | |
| k | 上 | |
| l | 右 | |
单词级 | w | word下个单词首字母 | |
| b | before上个单词首字母 | |
| e | end下个单词结尾 | |
行级 | 0 | 数字0,光标跳到行首 | |
| $ | 行尾 | |
段落级 | { | 段开始 | |
| } | 段结束 | |
屏幕级 | H | 屏幕首部。注意要大写 | |
| L | 屏幕尾部。注意要大写 | |
文档级别 | G | 文档尾部。注意要大写 | |
| nG | 文档的第n行。注意G要大写 | |
| gg | 文档第一行,注意小写 | |
| ctrl + f | 向下翻页 | |
| ctrl + b | 向上翻页 | |
内容删除 |
| dd | 删除当前行 |
| ndd | 自当前行向下删除n行 | |
| x | 删除当前字符 | |
| cw | 删除当前光标后边的字符,到行尾部 | |
内容复制 |
| yy | 复制光标当前行 |
| nyy | 自当前行向下复制n行 | |
| p | 粘贴。注意小写 | |
其他操作 |
| u | 撤销 |
| . | 重复上次操作 |
插入模式
即编辑模式。在命令模式下按下a,i,o,s之一即可进入插入模式,屏幕底部显示 INSERT,代表插入模式。此时可以输入任何内容。
按下 ESC 后即可回到命令模式。
尾行模式
命令输入在屏幕尾行。按下 : 后,尾行就显示了 : ,此时在冒号后输入命令即可。一般用于保存内容、查找替换、设置行号等等功能性操作。比如在编辑模式下输入好内容后,需要保存,此时按"ESC"回到命令模式,然后按下 : 进入到尾行模式
常用命令如下:
命令 | 说明 |
:q | quit退出vi编辑器,不保存,且停留在命令模式下 |
:w | write保存修改的内容。回到linux命令行 |
:wq | 保存并退出 |
:q! | 强制退出,对文本内容作了修改而不想要保存 |
:w! | 强制保存,当没有文本的写权限时 |
:set number | 显示行号。亦可 :set nu |
:set nonumber | 取消显示行号。亦可 :set nonu |
:n | 跳转到第n行 |
:/内容 | 查找内容,光标跳到内容所在行。亦可 :/内容/ |