posts - 32,comments - 75,trackbacks - 0

          1. 進入vi的命令                    

          1)“vi filename  :  打開或編輯一個名為filename的文件,進入命令模式

          2)“vi +n filename ”:打開文件,并將光標置于第n行首

          3)“vi + filename ”:打開文件,并將光標置于最后一行首

          4)“vi +/pattern filename”:打開文件,并將光標置于第一個與pattern匹配的串處

          5)vi -r filename :在上次正用vi編輯時發生系統崩潰,恢復filename

          6)vi filename....filename ”:打開多個文件,依次進行編輯

           

          2.退出vi:

              1) 命令模式下輸入 “:q!” :強制退出,不保存此次修改結果

              2)命令模式下輸入 “:wq” :保存當前內容后退出

           

          3.進入命令模式 :

              1)進入vi時即為命令模式

              2)從輸入模式下進入方法 “ESC

           

          4. 進入輸入模式

              1)“i”: 進入輸入模式并在光標前插入文本

              2)“I”: 進入輸入模式并在當前行首插入文本

              3)“a”: 進入輸入模式并在光標后插入文本

              4)A”: 進入輸入模式并在當前行為尾插入文本

              5)“o” :進入輸入模式并在當前行之下新開一行插入文本

              6)“O” :進入輸入模式并在當前行之上新開一行插入文本

           

          5.進入最后一行模式

              命令模式下輸入 “:”

           

          6.刪除(要在命令模式下進行)

              1) x” : 刪除光標所在字符

              2) X” : 刪除光標之前的一個字符

              3) dw” :刪除從光標開始的一個單詞

              4) dd” :刪除光標所在行

              5)“do” :刪至行首

              6)“d$” : 刪至行尾

           

          7.在vi中執行shell命令行(要在最后一行模式下進行)

              “:!command

             

          8.搜索(命令模式下進行)

              1)“fa” :搜索a在當前行下一個所出現的位置

              2)“Fa” :搜索a在當前行上一個所出現的位置

              3)“ta” :搜索a在下一個出現位置之前的字符

              4)“Ta” :搜索a的上一個出現位置之后的字符

              5)“;”  :重復最近的一次搜索命令

              6)/pattern”:從光標開始處向文件尾搜索pattern

          7)?pattern”:從光標開始處向文件首搜索pattern

          8)n”:在同一方向重復上一次搜索命令

          9)N”:在反方向上重復上一次搜索命令

           

          9.替換(最后一行模式下進行)

              1)“:s/p1/p2/g”:將當前行中所有p1均用p2替代

              2)“:n1,n2s/p1/p2/g”:將第n1n2行中所有p1均用p2替代

              3)“:g/p1/s//p2/g”:將文件中所有p1均用p2替換

           

          10.替換(命令模式下進行)

              1)“r”替換當前字符

              2)“R”替換當前字符及其后的字符,直至按ESC

           

          11.移動光標(命令模式下進行)

              1)h”:光標左移一個字符

          2)l”:光標右移一個字符

          3)space”:光標右移一個字符

          4)Backspace”:光標左移一個字符

          5)k”或“Ctrl+p”:光標上移一行

          6)j”或“Ctrl+n”:光標下移一行

          7)Enter” :光標下移一行

          8)w”或“W” :光標右移一個字至字首

          9)b”或“B” :光標左移一個字至字首

          10)e”或“E”:光標右移一個字至字尾

          11))” :光標移至句尾

          12)(” :光標移至句首

          13)}”:光標移至段落開頭

          14){”:光標移至段落結尾

          15)nG”:光標移至第n行首

          16)n+”:光標下移n

          17)n-”:光標上移n

          18)n$”:光標移至第n行尾

          19)H” :光標移至屏幕頂行

          20)M”:光標移至屏幕中間行

          21)L” :光標移至屏幕最后行

          22)0:(注意是數字零)光標移至當前行首

          23)$”:光標移至當前行尾

           

          12. “ ~  ” :改變光標所在字符的大小寫

           

          13. . ” : 重復上一個操作

           

          14.“ << ” :把當前行移到左邊

           

          15.“ >> ” :把當前行移到右邊

           

          16.給文件加鎖(最后一行模式下)

              “:X” :在出現Enter key提示后輸入密碼。下次進入該文件時,格式

          為“vi –x  filename”,出現提示,輸入密碼即可。

           

          17.簡化輸入(最后一行模式下)

               “:ab string strings” : 編輯時用string來代替strings

                eg:“:ab rd Redstone Info : 當以后在文本中輸入“rd”并回車時,“Redstone Info”就會出現代替rd

           

          18.自定義鍵盤命令(最后一行模式下,比較危險,不建議使用)

                  “:map keys new_seq

           

          19.顯示行號(最后一行模式下,coding時很管用)

              “:set number”顯示行號

           

          20.vi進行coding時查找某個函數

                  首先在shell環境下用ctags命令對當前目錄下的c原程序進行掃描,生成tags文件

                  eg:$ ctags *.c

                  然后,在vi中可以通過命令“:ta fun_name”,就可以直接打開函數fun_name所在的文件,并將光標置于函數開頭

           

          21.插入文件(最后一行模式下)

              “:r filename” :把文件filename插入到當前文件的當前位置中

           

          22.直接跳轉(最后一行模式下)

              “:n” : n為行數,直接跳轉到第n

           

          23.行復制(最后一行模式下)

              “:29 co 10 :將第2行到第9行的字copy到第11行(注意是第11行,不是第10行)

           

          24.行剪切(最后一行模式下)

              “:29 m 10 :將第2行到第9行的字move到第11行(注意是第11行,不是第10行)

          posted on 2006-02-23 20:10 fanta 閱讀(2723) 評論(0)  編輯  收藏 所屬分類: 其他
          主站蜘蛛池模板: 珠海市| 余庆县| 奎屯市| 黑水县| 博乐市| 繁昌县| 成都市| 石嘴山市| 东乌珠穆沁旗| 台东市| 襄城县| 东兰县| 五华县| 福安市| 大悟县| 乐安县| 清水河县| 贡山| 石屏县| 阳谷县| 密云县| 吉隆县| 新乡县| 辽阳县| 洛南县| 普兰店市| 乌审旗| 广汉市| 额敏县| 全南县| 绥江县| 江都市| 罗定市| 清水县| 馆陶县| 新河县| 陵川县| 盱眙县| 新干县| 宜昌市| 阳信县|