學習筆記(6)——vi和vim

使用vi或者vim進行文本編譯應該是每個Linux使用者都應該掌握的技能之一。由於習慣使用圖形化的文本編譯器,所以剛開始接觸時感覺還是挺難的,好多命令要記。

vi一共分爲三種模式:一般模式,編輯模式,命令行模式。

(1)一般模式:使用vi打開一個文檔後默認進入一般模式,在一般模式下可以移動光標,可以刪除字符或刪除整行字符,也可以複製粘貼文件數據。

(2)編輯模式:按“i、a、o、r(I、A、O、R)”進入編輯模式。按esc退出。

(3)命令行模式:在一般模式下,按“:、/、?”進入命令行模式,可以進行數據查找、讀取、保存、大量字符替換、離開vi、顯示行號等操作。

注:編輯模式與命令行模式不能相互切換,需要通過一般模式進行中轉。

vim具有顯色功能,一般情況下vi會被vim代替。vim中的包含vi的操作指令,並且還有其特有的操作指令。

vi具體操作說明:

移動光標的方法

使用“上(k)下(j)左(h)右(l)”將光標向“上下左右”移動一個字符。

使用“數字+方向鍵”可以進行多行或多個字符的移動。左右移動時,不自動換行。

使用“Ctrl+f”屏幕向下移動一頁,相當於PgDn鍵。

使用“Ctrl+b”屏幕向上移動一頁,相當於PgUp鍵。

使用“Ctrl+d”屏幕向下移動半頁。

使用“Ctrl+u”屏幕向上移動半頁。

使用“+(若使用主鍵盤區時,注意不是“=”,要使用shift+=)”光標移動到非空格的下一行。

使用“-”光標移動到非空格的上一行。

使用“數字(n)+space”光標右移動n個字符,一行字符不夠自動換行

使用“0”光標移動到這一行的第一個字符,相當於Home鍵。

使用“$(注意中文輸入法與英文輸入法的區別)”光標移動到這一行的最後一個字符,相當於End鍵。

使用“H(注意是大寫)”光標移動到這個屏幕上最上邊一行的第一個字符。

使用“M(注意是大寫)”光標移動到這個屏幕上中間一行的第一個字符。

使用“L(注意是大寫)”光標移動到這個屏幕上最下邊一行的第一個字符。

使用“G(注意是大寫)”光標移動到這個文件的最後一行。

使用“數字(n)+G”光標移動到這個文件的第n行。(顯示行號的命令下邊會介紹)

使用“gg”光標移動到這個文件的第一行,相當於“1G”。

使用“數字(n)+Enter”光標向下移動n行。

查找:

使用“/+string”來向下查找string,光標移動至string的第一個字符處。

使用“?+string”來向上查找string,光標移動至string的第一個字符處。

使用“n(英文按鍵)”重複前一個查找操作。

使用“N(英文按鍵)反向重複前一個查找操作。

替換:

使用“:n1,n2s/string1/string2/g”在第n1行與第n2行之間,查找string1,並將所有的string1替換爲string2。

使用“:1,$s/string1/string2/g”在第1行與最後一行行之間,查找string1,並將所有的string1替換爲string2。

使用“:1,$s/string1/string2/gc”在第n1行與第n2行之間,查找string1,並將所有的string1替換爲string2(在替換前顯示提示字符給用戶確認是否要替換)。

刪除:

使用“x和X”刪除光標後一個和前一個字符(相當於Del)。

使用“數字(n)+x”刪除光標後n個字符。

使用“dd”刪除光標所在的一整行。

使用“d1G”刪除光標所在到第一行的所有數據。

使用“dG”刪除光標所在到最後一行的所有數據。

使用“數字(n)+dd”刪除光標所在向下n行的所有數據。

使用“d$”刪除光標所在到該行的最後一個字符(包括光標所在的字符)。

使用“d0”刪除光標所在到該行的第一個字符。

複製粘貼:

使用“yy”複製光標所在的一行。

使用“p(P)”將已經複製的數據在光標下一行(上一行)粘貼。

使用“數字(n)+yy”複製光標所在向下的n行數據。

使用“y1G”複製光標所在到第一行的所有數據。

使用“yG”複製光標所在到最後一行的所有數據。

使用“y$”複製光標所在到該行的最後一個字符。

使用“y0”複製光標所在到該行的第一個字符。

其它:

使用“J”將光標所在行與下一行的數據結合成一行。

使用“u”復原前一個操作(相當於windows下文本編輯器中的Ctrl+z)。

使用“Ctrl+r”重做前一個操作(相當於windows下文本編輯器中的Ctrl+y)。

使用“.”重複前一個操作,如刪除、粘貼等。

編輯模式:

使用“i(I)”進入插入模式,i爲從光標所在處插入,I爲目前所在行的第一個非空格符處開始插入。

使用“a(A)”進入插入模式,a爲從光標所在的下一個字符處開始插入,A爲從光標所在行的最後一個字符處開始插入。

使用“o(O)”進入插入模式,o爲在光標所在行的下一行插入新的一行,O爲在光標所在行的上一行插入新的一行。

使用“r(R)”進入替換模式,r只會替換光標所在的那個字符一次,R會一直替換光標所在的字符,直到esc退出。

命令行模式:

使用“:set nu”來設置顯示行號

使用“:set nonu”來設置取消行號的顯示

使用“:w”將編輯數據寫入磁盤(相當於保存)

使用“:q”退出vi編輯器

使用“wq”保存並退出,注意順序

使用“!”強制的意思,一般與w和q連用,如“:w!”、":q!"、":wq!"等。

使用“ZZ(注意是大寫的Z,沒有“:”)”如果文件沒有改動則退出,若有改動,則保存後退出。

使用“:w filename”將現在的文件另存爲名字爲filename的文件。

使用“:r filename”將名爲filename的文件中的內容加到光標所在行的下一行。

使用“:n1,n2 w filename“將n1到n2的內容保存成filename這個文件。

使用“:! command”暫時離開vi到命令行中執行command命令的顯示結果(command指具體的命令,如ls等)


vim具體操作說明:

使用”v(小寫)“將光標經過的地方選中。

使用”V(大寫)“將光標經過的行選中。

使用”Ctrl+v“塊選擇,以長方形的方式選擇數據(類似鼠標操作)。

使用”y“複製選中的部分

使用”d“刪除選中的部分

使用”vim filename1 filename2 filename3“來打開多個文件,同時編譯

多文件編譯模式下:

使用”:n“來編輯下一個文件

使用”:N“來編輯上一個文件

使用”:files“來顯示所有可編譯的文件

使用”:sp“來打開一個新的窗口,若後面加一個文件名,則在新的窗口中打開另一個文件,若不加文件名,則打開與原來文件相同的文件。(後打開的文件在上面)
使用”Ctrl+w+下(先按Ctrl+w,鬆開後按下)“將光標切換到下面的窗口
使用”Ctrl+w+上(先按Ctrl+w,鬆開後按上)“將光標切換到上面的窗口
使用”Ctrl+w+q或:q”離開光標所在窗口

使用“:set backspace=(0,1,2)”來設置退格鍵的使用。數值爲2時可刪除任意值;爲0或1時只能刪除剛纔輸入的文字,原本以及存在的不可刪除,不同版本的linux這一設定不同。




發佈了17 篇原創文章 · 獲贊 0 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章