1. 程式人生 > >Linux學習——常用vim指令整理

Linux學習——常用vim指令整理

前言

整理《鳥哥的私房菜》中自認為比較有用的vim指令

 

移動游標的快捷鍵

Ctrl+f:向下移動一頁

Ctrl+b:向上移動一頁

0:移動到這一行的第一個字元處

$:移動到這一行的最後一個字元處

H:移動當前頁面的第一行處

L:移動到當前頁面的最後一行處

G:移動到檔案的第一行

gg:移動到檔案的最後一行

 

查詢字元

/word:在游標之下查詢word字元

?word:在游標之上查詢word字元

n:重複前一個查詢動作,例如:/word,按下n後,往下查詢word字元,?word,按下n後,往上查詢word字元

N:反向重複前一個查詢動作,例如:/word,按下N後,往上查詢word字元

 

進入插入或是取代的編輯模式

i:在游標所處位置進行插入

r:替換游標所在位置的字元一次,即替換一次後就退出編輯模式

R:替換游標所在位置的字元多次,即替換一次後可以接著進行下次替換

 

按下esc後,可以執行的指令

 

刪除、複製、貼上

dd:刪除游標所在的那一行

ndd:刪除游標所在位置的向下n行(包括游標所處位置)

yy:複製游標所在行

nyy:複製游標所在行向下n行(包括游標所處位置)

p:將已複製的資料貼到游標所處行的下一行貼上

P:將已複製的資料貼到游標所處行的上一行

u:撤銷前一個命令的動作,例如我們按下了dd,誤刪了某一行,則可以通過u來複原

[Ctrl]+r:重做上一個動作

 

區塊選擇

 

vim的環境設定引數

我們可以在啟動vim後,輸入上述環境設定,但是再次啟用vim時,又需要重新設定一次,如果想永久設定,可以修改 ~/.vimrc 這個檔案,如果這個檔案不存在,需要自己建立,在裡面設定環境設定即可

 

多檔案編輯功能

vim支援一次對多個檔案進行編輯,只需要在vim後面新增所有需要編輯的檔名即可,相應快捷鍵如下:

:n 需要注意到冒號的存在,編輯下一個檔案

:N 需要注意到冒號的存在,編輯上一個檔案

:files 列出當前編輯的檔案的名字

 

多視窗功能

vim支援多視窗,多個視窗的檔案可以是同一個,也可以不是,輸入:sp可以凍結當前視窗,新開一個視窗顯示當前檔案,游標所在位置不會發生改變,輸入:sp:filename可以凍結當前視窗,新開一個視窗顯示filename檔案

 

vim的暫存與恢復功能

當我們使用vim編輯filename檔案時,在同目錄下會建立一個名為.filename.swp的檔案,我們寫入filename檔案的內容會同步到.filename.swp檔案,當系統因為某些原因宕機時,.filename.swp檔案就可用於恢復,如果我們正常結束編輯並儲存,.filename.swp就會消失,接下來看看.filename.swp檔案是怎麼恢復檔案內容的:

對於上圖的兩個問題進行說明:

1、可能有其他人或程式同時在編輯這個檔案:

      linux允許多人同時使用一個賬號進行操作,如果多人同時編輯儲存同一個檔案,就會出現這種情況,解決的方法是:

      1、找到另外那個程式或人員,請他將該 vim 的工作結束,然後你再繼續處理

      2、只讀檔案

 

2、在前一個 vim 的環境中,可能因為某些不知名原因導致 vim 中斷 (crashed),常見處理方法為:

      1、按下R,恢復檔案,但是.filename.swp檔案並不會消失,下次啟動時還會出現上述介面,因此恢復檔案內容後,需要手動              刪除檔案

      2、如果知道檔案是不需要恢復的,按下D刪除.filename.swp檔案

 

上述圖片的六個按鈕作用如下:

[O]pen Read-Only:只讀檔案

(E)dit anyway:還是用正常的方式開啟你要編輯的那個檔案, 並不會載入暫存檔的內容

(R)ecover:恢復暫存檔的內容

(D)elete it:刪除.filename.swp檔案的內容

(Q)uit:離開編輯介面,回到命令列

(A)bort:離開編輯介面,回到命令列