vi命令全息介绍.doc
文本预览下载声明
vi 命令介绍
vi 是Visual Interface 的简称它在Linux 上的地位就仿佛Edit 程序在DOS
上一样它可以执行输出删除查找替换块操作等众多文本操作而
且用户可以根据自己的需要对其进行定制这是其他编辑程序所没有的
vi 不是一个排版程序它不象Word 或WPS 那样可以对字体格式段落等
其他属性进行编排它只是一个文本编辑程序
vi 没有菜单只有命令且命令繁多限于篇幅本文只介绍常用的命令
Vi 有三种基本工作模式命令行模式文本输入模式和末行模式
命令行模式
任何时候 不管用户处于何种模式只要按一下ESC 键即可使vi 进入
命令行模式当在shell 环境下输入vi 命令启动vi 编辑器时也是处于该模式
下
在该模式下 用户可以输入各种合法的vi 命令用于管理自己的文档此时
从键盘上输入的任何字符都被当作编辑命令来解释若输入的字符是合法的
vi 命令则vi 在接受用户命令之后完成相应的动作但需注意的是所输入
的命令并不在屏幕上显示出来若输入的字符不是vi 的合法命令vi 会响
铃报警
文本输入模式
在命令模式下输入插入命令 i 附加命令a 打开命令 o 修改命令c 取代
命令r 或替换命令s 都可以进入文本输入模式在该模式下用户输入的任何
字符都被vi 当做文件内容保存起来并将其显示在屏幕上在文本输入过程
中若想回到命令模式下按ESC 键即可
末行模式
在命令模式下用户按: 键即可进入末行模式下此时Vi 会在显示窗口的最
后一行通常也是屏幕的最后一行显示一个: 作为末行模式的提示符
等待用户输入命令多数文件管理命令都是在此模式下执行的如把编辑缓
冲区的内容写到文件中等末行命令执行完后vi 自动回到命令模式
若在末行模式下输入命令过程中改变了主意 可按ESC 键或用退格键
将输入的命令全部删除之后再按一下退格键即可使vi 回到命令模式下
vi 的进入与退出
在 shell 模式下键入vi 及需要编辑的文件名即可进入vi 例如
vi example.txt
即可编辑 example.txt 文件如果该文件存在则编辑界面中会显示该文件的
内容并将光标定位在文件的第一行如果文件不存在则编辑界面中无任
何内容如果需要在进入vi 编辑界面后将光标置于文件的第n 行则在vi
命令后面加上+n 参数即可例如需要从example.txt 文件的第5 行开始显
示则使用如下命令
vi +5 example.txt
退出 vi 时需要在末行模式中输入退出命令q 如果在文本输入模式下
首先按ESC 键进入命令模式然后输入: 进入末行模式在末行模式
下可使用如下退出命令
:q 直接退出 如果在文本输入模式下修改了文档内容则不能退出
:wq 保存后退出
:x 同 wq
:q! 不保存内容 强制退出
vi 中显示行号
在末行模式下 输入如下命令
set number
可使 vi 在编辑界面中显示行号
此外 在末行模式下可使用如下nu 命令number 的简写来显示光标
所在行的行号及该行的内容
光标移动操作
全屏幕文本编辑器中 光标的移动操作无疑是最经常使用的操作了用户只
有熟练地使用移动光标的这些命令才能迅速准确地到达所期望的位置处进
行编辑
vi 中的光标移动既可以在命令模式下也可以在文本输入模式下但操作的方
法不尽相同
在文本输入模式下 可直接使用键盘上的四个方向键移动光标在命令模式
下有很多移动光标的方法不但可以使用四个方向键来移动光标还可以
用h j k l 这四个键代替四个方向键来移动光标这样可以避免由于不同机
器上的不同键盘定义所带来的矛盾而且使用熟练后可以手不离开字母键盘
位置就能完成所有操作从而提高工作效率
以下命令均在命令行模式下完成光标移动
h 光标左移 如果在按h 命令前输入数字n 则光标左移n 个字符
l 光标右移 如果在按l 命令前输入数字n 则光标右移n 个字符
j 光标上移 如果在按j 命令前输入数字n 则光标上移n 个字符
k 光标下移 如果在按k 命令前输入数字n 则光标xia 移n 个字符
0 零光标移到行首
$ 光标移到行尾
H 光标移到屏幕上显示的第一行 并不一定是文件头
L 光标移到屏幕上显示的最后一行 并不一定是文件尾
M 光标移到屏幕的中间一行
nG 光标移到第 n 行
w或W 将光标右移至下一个单词的词首
e 或E 如果光标起始位置处于单词内即非单词尾处则该命令将把光
标移到本单词词尾如果光标起始位置处于单词尾则该命令将把光标移动
到下一个单词的词尾
b 或B 如果光标处于所在单词内即非单词首则该命令将把光标移至
本单词词首如果光标处于所在单词的词首则该命令将把光标移到上一个
单词的词首
Ctrl+G 状态命令 显示当前编辑文档的状态包括正在编辑的文件名是
否修改过当前行号文件的行数以及光
显示全部