1 / 16
文档名称:

vi使用详解.doc

格式:doc   大小:77KB   页数:16页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

vi使用详解.doc

上传人:mh900965 2018/3/18 文件大小:77 KB

下载得到文件列表

vi使用详解.doc

文档介绍

文档介绍:vi 使用详解本
本文中的命令都在suse 中试过,没有通过的用??表示
vi 是linux 系统中的全屏幕文本编辑器,是最常用的文本编辑工具软件之一,vi命令是unix下常用而重要命令,可在全屏幕方式下编辑一个或多个文件。若在vi执行时没有指定一个文件,那么vi命令会自动产生一个无名的空的工作文件。若指定的文件不存在,那么就按指定的文件名创建一个新的文件。若对文件的修改不保存的话,v i命令并不改变原来文件的内容。
注意:vi命令并不锁住所编辑的文件,因此多个用户可能在同时编辑一个文件,那么最后保存的文件版本将被保留。
启动vi编辑器时使用的一些选项及含义:
-mand 在对指定的文件编辑前,mand ??
-r filename 恢复指定的文件filename (recover)
-R 将指定的文件以只读的方式放入编辑器中,这样不会保存对文件的任何修改
-y number 将编辑窗口的大小设为number行
+n file 打开文件后光标停留在文件的第n行行首
+ filename 打开文件filename,并将光标置于最后一行行首
+/pattern filename 打开文件filename 并将光标置于第一个与pattern 相匹配的字符串处
filename1 filename2 filename3 打开多个文件,依次进行编辑
下面是vi编辑所处的三种模式:
命令模式进入vi时所处的模式。在此模式下用户可输入各种子命令对进行操作,如删除行、粘贴行、移向下一个字、移向不同行等。
文本输入模式在此模式下可以修改一行的内容并增添新行。在命令模式下键入a 、i 或c键可进入文本输入模式,按Escape键可返回命令模式。
末行命令项模式在此模式下,可以通过子命令输入更多的参数。如:w子命令要求输入一文件名,“/”子命令要求输入一个查找项。用户使用Escape键返回命令模式。在命令模式下“:”或“/”或“?”三键的任一键进入Last line mode
下面是在命令模式下进入文本输入模式的子命令(用户可在任何时候按Escape返回到命令模式):
插入文本类命令:
a 由命令行状态进入编辑状态,在光标之后插入文本 Append
A由命令行状态进入编辑状态,输入的内容插入到当前行行尾
i由命令行状态进入编辑状态,在光标之前插入文本 insert
I由命令行状态进入编辑状态,输入的内容插入到当前行行首
o由命令行状态进入编辑状态,在光标所在行后插入一空行 open
O由命令行状态进入编辑状态,在光标所在行前插入一空行。
r 不进入文本输入模式,替换光标所在的字符, 即:替换一个字符后还处于命令模式 replace
R由命令行状态进入编辑状态,从光标所在的字符开始替换字符,直到输入“esc”进入命令行状态
s 由命令行状态进入编辑状态,删除光标所在字符,在原来的光标之后插入文本(这一点同a),即在删除后的光标之前插入文本
S 由命令状态进入编辑状态,并删除当前行内容,在当前行开始插入
ncw由命令行状态进入编辑状态,并删除从当前位置开始的n个单词
nC 由命令行状态进入编辑状态,并向下删除从当前行开始的n行
下面是自命令模式下执行的,在同一行上移动的自命令:
移动光标命令:
hjkl
k 将光标上移一个字符。
j 将光标下移一个字符。
h 将光标左移一个字符。
l 将光标右移一个字符。
Space键 光标右移一个字符
Backspace键光标左移一个字符
Ctrl+p 光标上移一行
Ctrl+n 光标下移一行
Enter键光标下移一行
- 光标移至上一行第一个非空格字符
+ 光标移至下一行第一个非空格字符
w 光标右移到下一个小字的字首(右移)
nw 右移到第n个单词的词首
例:abc def ghe àabc def ghe (2w后)
W 光标右移到下一个大字的字首
nW 光标右移到第n个大字的字首
b 光标左移到前一个小字的字首(左移)
nb光标左移n个小字,前移到第n个小字的字首
例: abc def ghe à abc def ghe (2b后)
B 将光标左移到前一个大字的字首
nB 将光标左移n个大字,前移到第n个大字的字首
e 若光标不在所在小字的字尾,则将光标移到该小字的字尾
若光标在在所在小字的字尾,则将光标移到下一个小字的字尾
ne 可作相应的解释
E 若光标不在所在大字的字尾,则将光标移到该大字的字尾
若光标在在所在大字的字尾,则将光标移到下一个大字的字尾
nE 可作相应的解释
注:小字与大字的区别:
有些情况下是没有区别的,例如:对于单词来说二者没有区别
有些情况下是有