简单的介绍UNIX下的常用编辑工具VI

【简单的介绍UNIX下的常用编辑工具VI】
vi全屏幕编辑器
vi(Visual)是以视觉为导向的全屏幕编辑器、共分为三种方式(mode):
command方式:
任何输入都会作为编辑命令,而不会出现在屏幕上,若输入错误则有“岬”的声音;任何输入
都引起立即反映
insert方式:
任何输入的数据都置于编辑寄存器 。在command方式下输入(I,a,A等),可进入insert方式,insert方式下按ESC,可跳回command方式 。
escape方式:
以“:”或者“/”为前导的指令,出现在屏幕的最下一行,任何输入都被当成特别指令 。
进入vi(在系统提示符下面输入以下指令):
vi 进入vi而不读入任何文件
vi filename 进入vi并读入指定名称的文件(新、旧文件均可) 。
vin filename进入vi并且由文件的第几行开始 。
vifilename 进入vi并且由文件的最后一行开始 。
vi/Word filename 进入vi并且由文件的word这个字开始 。
vi filename(s) 进入vi并且将各指定文件列入名单内,第一个文件先读入 。
vedit 进入vi并且在输入方式时会在状态行显示“INSERT MODE" 。
编辑数个文件(利用vi filename(s))进入vi后)
:args 显示编辑名单中的各个文件名
:n读入编辑名单中的下一个文件
:rew读入编辑名单中的第一个文件
:e# 读入编辑名单内的前一个文件
:e file 读入另一个文件进vi(此文件可不在编辑名单内),若原文件经修改还没有存档,则应先以: w 存档 。
:e! file强迫读入另一个文件进入vi,原文件不作存档动作 。
存储及退出vi
:w filename 存入指定文件,但未退出vi(若未指定文件名则为当前工作的文件名) 。
:wq 或者 :x或者zz 存文件,并且退出vi.
:q不作任何修改并退出vi 。
:q! 放弃任何修改并退出vi 。
:!command 暂时退出vi并执行shell指令,执行完毕后再回到vi 。
:sh 暂时退出vi到系统下,结束时按Ctrld则回到vi 。
加数据指令
i 在关标位置开始插入字符,结束时候按ESC键 。
I 在光标所在行的最前面开始加字,结束时按ESC键 。
a 在光标位置后开始加字,结束时按ESC键 。
A 在光标所在行的最后面开始加字,结束时按ESC键 。
o 在光标下加一空白行并开始加字,结束时按ESC键 。
O 在光标上加一空白行并开始加字,结束时按ESC键 。
!command执行shell指令,并把结果加在光标所在行的下一行 。
删除指令
nx删除由光标位置起始的n个字符(含光标位置,按一个x表示删除光标所在的字符)
nX 删除由光标位置起始的n个字符(不含光标位置) 。
ndw 删除光标位置其实的n个字符组(word) 。
d0 将行的开始到光标位置的字符全部删除 。
d$ 或D 将光标位置起始到行尾的字符全部删除 。
ndd 将光标位置起始的n行(整行)删除(dd表示删除光标所在行) 。
:start,endd 删除文件的第start到end行 。
关标移动
0 移到一行的开始
$ 移到一行的最后

推荐阅读