vi编辑器的使用

来源:互联网 发布:鹊桥淘宝客怎么设置 编辑:程序博客网 时间:2024/04/30 01:52
在linux系统中包含了很多的不同的编译器,但是最有名的莫过于vi了。vi是visual的意思。它是所有的系统都会提供的屏幕编辑器。
一 vi的操作模式
这就是windows的记事本和linux的vi编译器的区别所在,windows主要所基于图形界面,所以用户用起来得心应手,随心所欲,但是linux的命令模式,在初次接触的情况下,还是有很多的不习惯的。
vi共包含三种操作模式:Command Mode , Insert Mode , Last Line Mode ,他们的基本功能如下:
Command Mode :
   控制光标的移动,删除字符,复制区段
Insert Mode :
   唯一的功能就是输入文本数据
Last Line Mode :
   保存文件,退出vi,以及其他的设置,例如查找或替换字符串

注意:你要想完成一种功能,必须在相应的模式下,才能成功。比如,你正在Insert Mode下,输入一行内容,发现这一行的前面某处有错误,于是,你按下方向键,想定位到错误的地方,但是光标并没有按你想象的那样移动,而是在这一行的上面,莫名其妙的输入了一个字母。出现这样的情况,是因为在Insert Mode模式下,你只能进行输入文本数据的操作,不能控制光标的移动,要想随心所欲的控制光标,就必须得进入到Command Mode模式下。所以,我们能熟练的在这三种模式中,进行转换,是用好vi编译器的基础。

二 三种模式之间的转换:
1. Command --> Insert
   i:插入(insert),在当前的光标位置插入文本。
   a:增加(append),在当前的光标的下一个位置插入文本。
   o:插入新行,并且从行首开始输入文本。
2. Command --> Last Line
   按":" , "?" , "/"都可以从Command Mode 进入 Last Line Mode
3. Insert/Last Line --> Command
   按“Esc”键,即可由Insert Mode 或者 Last Line Mode 进入Command Mode
4. 由Insert Mode 进入 Last Line Mode 或者 由Last Line Mode 进入 Insert Mode 都要先回到Command Mode 模式,然后再进入相应的模式。

三 Command Mode模式下的常用功能键
1. 方向键
   控制光标的移动,注意,上下方向键移动光标是以行来移动的,而vi中,一行是以回车结束来判定的。
2. 复制文本
   y+y : 连续按两次y,可将光标所在位置的整行复制。但是注意,复制后的部分,并不会以反色显示。
   数字+y+y :数字表示要复制的行数,是从光标所在的位置向下数起的。
   y+w : 复制光标所在单词的字母开始到该单词结尾。比如 hello,若光标此时在e字母上,则按下y+w,那么复制的内容是:ello 。
   数字+y+w :数字表示要复制的单词的数目。
   p : 粘贴
3. 删除文本
   x : 删除光标所在位置的字符
   数字+x:删除光标所在位置,以及后方的“数字”个字符
   d+d :删除光标所在的那一行
   d+w :删除光标所在的单词,
   数字+d+w:删除光标所在单词,以及后方的“数字”个单词
   D : 可删除同一行中,光标所在位置之后的所有字符。
4. 其他用法
   u : 表示复原(undo)的功能
   . : 重复执行上一个命令
   Z+Z : 连续按两次Z键,保存当前的内容,并且退出vi编辑器,注意是大写的Z

   % : 在写程序的时候,经常会遗漏某个左括号或是右括号,若要检查这个错误,将光标停留在某个左括号或是右括号,然后按%键,vi就会自动找出其对应的左括号或是右括号。
   gg : 移动到文件头
    G:移动到文件尾

四 Last Line Mode 的常用功能键
   e+文件名:编辑指定的文件,若该文件已存在,则打开该文件,若不存在,则新建该文件,e是edit的意思。
   w : w是写入(write)的意思。即保存当前的文件内容。
   q : (quit)表示退出vi编辑器。只有当前的内容保存之后,才能正确的执行该命令。
   q! : 强制退出编辑器,并且不保存当前的内容。
   wq : 保存并且退出编辑器
   set nu : 显示行号
   set nonu : 取消行号
   ctrl+z:切换到后台,fg:返回到前台

原创粉丝点击