vi指令说明(简易版)

  vi 是linux下最常用的文本编辑软件,它的强大更甚于windows下的editplus。

  vi 有两个 mode , command mode 与 insert mode 。平常我们在输入时所使用的是 insert mode , 而下特殊指令如复制和刪除则是采用 command mode 。

  由 command mode 进入 insert mode 有四个常用的指令: i , a , o , 跟 O 。
  i 是由游标的前面开始做 insert text 的动作。 
  a 是由游标的后面开始做 insert text 的动作。 
  o 则是在游标下方开启新的一行来编辑。
  O 是由游标的上方来开启新的一行来编辑。结束一个编辑动作可以用 Escap 来回到 command mode , 此时可以做移动,刪除,复制,搜索等编辑指令。

vi 的移动一般用上下左右键便可达到,然而它也有其自己的指令键:
    h : 向左移一个字符
    j : 向上移一个字符
    k : 向下移一个字符
    l : 向右移一个字符
    0 : 移至行首
    $ : 移至行尾

vi 的刪除指令有几种,如下:
    x : 刪除游标上的字符。
    X : 刪除游标的前一个字符。
    dd: 刪除该行。
    dw: 刪除游标所在之单字。
    d0: 刪除自行首至游标所在之所有字符。
    d$: 刪除自游标至行尾之所有字符。
    
    vi 可以使用 yy 来将游标所在行存起来,然后将游标移至所要贴的行之处按 p , 则刚才 mark 的行会被复制出现在游标之下。( 如果使用 P 则会出现在游标之上。)

    在指令模式中,你可以在任何前面提到的指令前面加上大于零的数字 n,则你所做的动做将会被重复 n次,如要刪除十行可以按 10 dd , 要复制十行可以用 10 yy , 要将同样的文字重复写十次可以用 10 i ,然后离开 insert mode 之后就会将剩下的九次重复写出來。  
    在 command mode 要存入一个已写好的档案可以使用'ZZ' , 則它将会把你编好的档案写入后离开 vi 。
    在 vi 中搜索一个字串可以使用 / , 在斜线后跟上你所要搜索的字串,它就会找到你所要的字串,如要在搜索相同字串按 n 即可。使用? 来搜索可以使vi往回找出你所需要的字串。

    ex 的指令,在 vi 中亦可使用 ex 的指令,只要在 command mode 时以冒号 : 做开头,即可使用 ex 的指令。常用 ex 指令如下:
    :l1 , l2 d 刪除自行l1至行l2的文字。
    :l1 , l2 s /patern1/patern2/[g] 将自行l1至行l2的文字中,有 patern1 的字串改为 patern2 的字串,如无 g 则仅更换每一行所 match 的第一个字串。如有 g 则将每一个字串均做更换。
    :l1 , l2 co l3 将自行l1至行l2的文字 copy 到行 l3 。
    :l1 , l2 mo l3 将自行l1至行l2的文字 move 到行 l3 。
    :w [file] 将编辑的文字存入档案中。
    :n [file] 引入下一个档案。
    :q    离开

你可能感兴趣的:(Linux,vi,vi命令)