vi基本操作方法good精编
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
v i基本操作方法g o o d
精编
Document number:WTT-LKK-GBB-08921-EIGG-22986
编写说明
标题:vi基本操作方法
类别:文档
存放位置:培训资料\Unix\vi基本操作方法.doc 编辑软件:Microsoft Word XP 中文版
版本历史:
目录
编写说明........................................ II 一vi的操作模式. (1)
二进入vi (1)
三指令模式 (1)
进入输入模式 (2)
光标移动 (2)
视窗移动 (3)
删除操作 (3)
拷贝和粘贴操作 (4)
修改操作 (4)
指令重复 (4)
取消前一动作 (5)
查找字符串 (5)
查看编辑状况 (5)
括号匹配 (5)
四保存与退出 (6)
五环境设置 (6)
六执行指令 (7)
七重复指令 (7)
八切换到shell状态 (8)
一vi的操作模式
vi提供两种操作模式:输入模式(insert mode)和指令模式(command mode)。在输入模式下,用户可输入文本资料。在指令模式下,可进行删除、修改等各种编辑动作。
在输入模式下,按Esc键切换到指令模式下。
在指令模式下,按输入指令(i、a、o等)进入输入模式。
二进入vi
$ vi filename [filename filename]
直接键入“vi + 所要编辑的文件名”,即可对指定的文件进行编辑。
如果指定的文件为新文件,则提示:“New file”,否则显示该文件的当前内容。
filename可以是文件名,也可以是表达式如:*.c,*haha.*
也可以不指定文件名,直接进入编辑界面,这种方法用于编辑一个新文件,但是暂时还没有确定文件应该叫什么名字时。
$ view filename
以只读方式打开文件filename
vi +n filename:打开文件,并将光标置于第n行首
vi + filename:打开文件,并将光标置于最后一行首
vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处
vi -r filename:在上次正用vi编辑时发生系统崩溃,恢复filename
vi filename....filename:打开多个文件,依次编辑
三指令模式
以下指令集中重要度为“***”的必须掌握的指令,否则无法正常使用vi,重要度为?的为建议掌握的指令,可以更方便地使用vi,其它属于技巧级指令,可以不掌握。
下面所列的所有命令,都必须在指令模式下才能执行,在输入模式下将把输入的字符作为文件内容添加到文件中(ESC除外,因为该命令将从输入模式切换到指令模式)。
3.1 进入输入模式
其他同样可以起到切换到输入模式的非正规方法:
输入结束后,按Esc键退出输入模式。
3.2 光标移动
标向前移动5个字节,10j表示向下移动10行。
n$:光标下移n-1行,并置到尾
nG:光标移至第n行首
n+:光标下移n行
n-:光标上移n行
ctrl+g:会显示该文件名称,该行的行号,文件中最末行的行号,光标所在行占总行号的百分比
fx :往右移动到 x 字符上
Fx :往左移动到 x 字符上
tx :往右移动到最近的x 字符前
Tx :往左移动到最近的 x 字符后
(注意:以上四个命令中,其中x是键入的字符)
分号,配合 f 和 t 使用,重复一次
逗号,配合 f 和 t 使用,反方向重复一次
3.3 视窗移动
3.4 删除操作
以上x,X,dw,db,dd可以指定字符/行数,如3x表示删除从当前光标所在位置起的3个字符,3dd表示删除从当前光标所在行开始的3行。
3.5 拷贝和粘贴操作
3.6 修改操作
前光标及其以后的5个字符,3cb表示替换当前光标及其之前的3个单词。
3.7 指令重复
在指令模式中,可在指令前面加入一个数字n,则该指令会重复执行n次。常用的重复操作有:
3.8 取消前一动作
一般vi只保存上一次的修改即本行的所有修改,因此执行u指令时,撤销上次修改,再执行u指令则撤销撤销操作。如果执行了U,则u就没用了。
但是有些机器可能安装了vim软件,改软件保存所有的修改,因此u可以一直进行撤销,想撤销撤销操作是不可能的事情。
3.9 查找字符串
3.10 查看编辑状况
3.11 括号匹配
括号匹配符可以用在各种指令中,如d%表示从但前光标位
置删除到匹配的“(”“
)”“{”“}”的位置,c%表示替换从当前光标到配置的“(”“)”“{”“}”位置,y%表示拷贝从当前光标位置到其后匹配的“)”或“}”。
当光标不在“(”“)”“{”“}”上时,默认找其后最近的“(”,然后找“{”,如:
if ( Dflag != TMD ( rflag != READABLE || wflag != WRITEABLE ) ) {
… }
光标在&处,此时若执行d%则效果为:
…
}
四保存与退出
五环境设置