常用工具--编辑器vi

来源:百度文库 编辑:神马文学网 时间:2024/04/28 12:01:20
Vi 是unix操作系统提供的一个全屏幕文本编辑器,是编辑文本文件的一个重要工具。熟练掌握vi命令及其使用技巧往往能起到事半功倍的作用,大大提高编程工作的效率。在掌握如i,a,o,O,m,x,u,dd,yy,dw,cw,s,.,/,Ctrl-F,Ctrl-B, Ctrl-G,w,q等基本命令外,下面介绍一些实际工作中所常用的命令技巧:
1.同时编辑多个文件
1)同时将多个文件调入缓冲使用命令
# vi flname1 flname2 … flnamen
2)逐个在同一缓存中编辑另一文件
# vi flname1
:e flname2
3)修改包含某一字符串的文件可与 grep 命令结合使用,如欲编辑当前目录下含有abc字串的所有C源程序:
# vi `grep -l abc *.c`
4)编辑下一文件用:n
5)回到首文件:rew
6)编辑在缓存中的两个文件快速切换命令
:e# 或Ctrl-^,使用Ctrl-^ 命令更便捷,但如终端类型不正确该功能将无效。
2.将一个文件的部分内容读入另一文件中,有以下两种操作方式:
1) 将欲读入的内容用w 命令写入一临时文件,再用r 命令读入。该方法笨拙,临时文件需清理。
2) 将欲读入的内容写入一临时缓存器后再切换到目标文件,将光标移至需读入内容处,从缓存器中提出。该方法操作方便快捷,不会产生垃圾文件。
a.写入缓存器a 命令: 起始行mk 结束行 "ay‘k
b.从缓存器 a中提出: "ap
3.放弃一修改过的文件,重新编辑
1)使用命令:q! 强行退出后再vi flname重新进入;
2)使用命令:e! 强行重编辑更便捷;
4.定位文件尾用G比:$更快捷,段落定位用(和)键,括号匹配定位用%,定位行首0,定位行尾$,两行连接J,行左移<< , 行右移 >>,该命令用于调整源码缩进格式简便快速;
5.大小写字母自动切换命令:shilft + ~,屏幕刷新Ctrl-l
6.替换命令的特殊处理:
1) 范围:行号、当前行用. 标示,所有行用$ 标示;
2) 位置:文件行首用 ^ 标识,行尾用 $ 标识,如:
: 1,$s/^/abc/g 表示文件行首加入abc字串
: 1,.s/$/abc/g 表示文件首行至光标所在行行尾加入abc字串
7.在vi 命令状态直接读入一外部命令执行结果
:!+外部命令
如:!date直接读入一系统日期
8.在vi 中也可输入非ASCII码
如欲输入打印机的换页控制码^L (码值为12),其输入方法是先输Ctrl-v 再输Ctrl-l即可,其中Ctrl-v是静默值。
9.时退出至shell状态命令:sh , 退出shell后将回到原编辑状态;