转载请标明:http://www.cnblogs.com/winifred-tang94/
要启动vi编辑器,直接在命令提示符下输入vi命令即可,如果要编辑一个文件则使用“vi 文件名”的方式。如下图所示,窗口的最后一行是状态栏,有文件名、文件的大小、文件的读写属性:
Vi编辑器有三种操作方式:
A、 命令方式;vi编辑器刚刚启动的时候是处于命令方式的。
B、 编辑方式;如果用户要进入编辑方式,可以通过在命令方式下输入命令从而进入编辑方式。如附加数据的a命令和插入数据的i命令。输入esc键就可以从编辑方式返回命令方式。
C、 ex转义方式(在vi编辑器中调用ex编辑器的命令来完成编辑操作);在命令方式下输入:命令就可以进入ex转义方式。进入ex转义方式后,可以在之前输入的:(即ex命令提示符)后输入ex命令进入ex方式编辑。
注意:在vi编辑器中队文件进行的编辑,都是对编辑缓冲区进行操作的,如果要真正对文件进行修改,要输入:w(ex命令)命令或其他命令向磁盘写入,对文件的修改才会真正写入文件。
Vi编辑器中的功能键:
<Esc>键:用于结束编辑方式,重新进入命令方式。
<Enter>键:在使用ex转义方式的时候,enter键使ex命令生效并且退出ex转义方式返回命令方式。
/:在 / 后输入字符串或字符可以从当前位置向后查找字符串或字符,当找到第一个需要找的字符串或字符后,点击 n 会跳到下一个匹配值。
?:? 的功能和 / 是一样的。
如下图所示:在/后输入esac后按enter键就会找到匹配的字符串。
退出vi编辑器:
命令ZZ:在命令方式下,输入命令ZZ保存当前修改并退出vi编辑器。
Ex命令:x ——可以保存当前修改并推出vi;
Ex命令:q——退出
Ex命令:q!——退出但不保存。
Vi编辑器在命令方式下的命令:
A、 光标移动命令:
移动至下一行:enter键和下方向键
移动到行首:0
移动到行尾:$
移动到某行:先按行号然后按G,光标就跳转到指定行号的第一个字符。
移动到句首:(
移动到句尾: )
移动到段首:{
移动到段尾: }
B、 文本编辑命令
在当前位置插入,用i命令,输入的字符会插入所在光标的字符之前。
在当前位置附加,用a命令,输入的字符会插入在当前光标所在的字符之后。
在当前行的末尾附加:A命令
开始新行:o 在当前行的下面建立新行、O 在当前行的上面建立新行
C、 文本删除命令
X命令删除当前光标所在位置的字符,X命令删除当前光标所在位置之前的那个字符。
dw删除当前位置的一个单词;d$从当前位置删除至行尾;dd删除当前行。
注意:删除操作删除的文本放在一组缓冲栈中,缓冲栈编号从1到9,最后一次删除的文本放在缓冲栈1中,可以通过p命令将最后一次删除的文本放在当前行的下一行;如果要找回其他文本的话使用命令:+缓冲栈编号+p。
D、 文本修改命令
在编辑过程中,可能会有修改错误的时候,这个时候可以撤销修改,u命令撤销上一次修改,U命令撤销进入本行以来所做的所有修改。
E、 文本移动和复制
在vi编辑器中也可以复制和移动。
如果要复制的话,要结合y命令和p命令。如果要复制当前一行则使用命令yy,然后将光标移动到要添加的位置,使用p命令,就将之前复制的那一行粘贴过来了。可以在yy前加数字表示行数,比如3yy表示从当前位置开始的3行都被复制。
如果要移动的话,要结合d命令和p命令,之前我们说过dd命令删除当前这一行,利用dd删除了当前这一行后,将光标移动要所要移动到的位置执行p命令,就把之前删除的那一行移动过来了。——之所以会这样的原因是,删除的数据保存在vi的缓冲区中。
Vi编辑器中的个别转义命令
写命令——:w
读命令——:r 文件名(通过这个命令可以在打开的本文件中读取外部文件)