UNIX实用手册(VI)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
五、vi 的使用
简易的vi 使用法:
vi 有两个mode , command mode 与insert mode 。
平常我们在输入时所使用的
是insert mode , 而下特殊指令如复制和删除则是采用command mode 。
由command mode 进入insert mode 有四个常用的指令: i , a , o , 跟O 。
i 是由游标的前面开始做insert text 的动作。
a 是由游标的後面开始做insert
text 的动作。
o 则是在游标下方开启新的一行来编辑,同样的,O 是由游标的上
方来开启新的一行来编辑。
结束一个编辑动作可以用Escap 来回到command mode , 此时可以做移动,删除,复制,搜寻等编辑指令。
vi 的移动一般用上下左右键便可达到,然而它也有其自己的指令键:
h :向左移一个字元
j : 向上移一个字元
k :向下移一个字元
l : 向右移一个字元
0 :移至行首
$ :移至行尾
vi 的删除指令有几种,如下:
x :删除游标上的字元。
X : 删除游标的前一个字元。
dd: 删除该行。
dw: 删除游标所在之单字。
d0: 删除自行首至游标所在之所有字元。
d$: 删除自游标至行尾之所有字元。
vi 可以使用yy 来将游标所在行存起来,然後将游标移至所要贴的行之处按
p , 则刚才mark 的行会被复制出现在游标之下。
( 如果使用P则会出现在
游标之上。
)
在指令模式中,你可以在任何前面提到的指令前面加上大於零的数字n,则你
所做的动做将会被重覆n次,如要删除十行可以按10 dd , 要复制十行可以用
10 yy , 要将同样的文字重覆写十次可以用10 i ,然後离开insert mode 之
後就会将剩下的九次重覆写出来。
在command mode 要存入一个已写好的档案可以使用'ZZ' , 则它将会把你编好
的档案写入後离开vi .
在vi 中搜寻一个字串可以使用/ , 在斜线後跟上你所要搜寻的字串,它就会
找到你所要的字串,如要在搜寻相同字串按n 即可。
使用? 来搜寻可以使vi往回找出你所需要的字串。
ex 的指令
在vi 中亦可使用ex 的指令,只要在command mode 时以冒号: 做开头,
即可使用ex 的指令。
常用ex 指令如下:
:l1 , l2 d 删除自行l1至行l2的文字。
:l1 , l2 s /patern1/patern2/[g] 将自行l1至行l2的文字中,有patern1 的字
串改为patern2 的字串,如无g 则仅更换每一行所match 的第一
个字串。
如有g 则将每一个字串均做更换。
:l1 , l2 co l3 将自行l1至行l2的文字copy 到行l3 。
:l1 , l2 mo l3 将自行l1至行l2的文字move 到行l3 。
:w [file] 将编辑的文字存入档案中。
:n [file] 引入下一个档案。
:q 离开
其馀请参阅gopher 上的vihelp , 或执行vilearn , 学习vi 的用法。