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:離開編輯介面,回到命令列