Linux Vim基本操作(檔案的開啟和編輯)完全攻略
本節來學習如何使用 Vim 編輯檔案。
首先學習如何使用 Vim 開啟檔案。
Vim 開啟檔案
使用 Vim 開啟檔案很簡單,例如在命令列模式下開啟一個自己編寫的檔案 /test/vi.test,開啟方法如下:
[root@itxdl ~]# vim /test/vi.test
剛開啟檔案時 Vim 處於命令模式,此時檔案的下方會顯示檔案的一些資訊,包括檔案的總行數和字元數,以及當前游標所在的位置等,此時可以使用插入命令進入輸入模式對檔案進行編輯,如圖 1 所示。
圖 1 Vim 開啟檔案
除此之外,我們還可以利用下表中開啟檔案的命令格式,針對特定情形使用適當的開啟方式,可以大大提高我們的效率。
表 2 Vim 開啟檔案的快捷方法
使用 Vim 進行編輯
同樣,Vim 提供了大量的編輯快捷鍵,主要可分為以下幾類。
Vim 插入文字
從命令模式進入輸入模式進行編輯,可以按下 I、i、O、o、A、a 等鍵來完成,使用不同的鍵,游標所處的位置不同,如表 3 所示。
表 3 插入文字
Vim 查詢文字
表 4 Vim 查詢目標文字
例如,在 /etc/passwd.vi 檔案中查詢字串 "root",則執行命令如圖 5 所示。
圖 5 使用 Vim 進行查詢
如果在檔案中並沒有找到所要查詢的字串,則在檔案底部會出現 "Pattern not found" 提示,如圖 6 所示。
圖 6 未查詢到指定字串的提示
在查詢過程中需要注意的是,要查詢的字串是嚴格區分大小寫的,如查詢 "shenchao" 和 "ShenChao" 會得到不同的結果。
如果想忽略大小寫,則輸入命令 ":set ic";調整回來輸入":set noic"。
如果在字串中出現特殊符號,則需要加上轉義字元 "/"。常見的特殊符號有 /、*、?、$ 等。如果出現這些字元,例如,要查詢字串 "10$",則需要在命令模式中輸入 "/10/$"。
Vim 替換文字
表 7 Vim替換文字
例如,要將某檔案中所有的 "root" 替換為 "liudehua",則有兩種輸入命令,分別為:
:1, $s/root/liudehua/g或:%s/root/liudehua/g
上述命令是在編輯模式下操作的,表示的是從第一行到最後一行,即全文查詢 "root",然後替換成 "liudehua"。
如果剛才的命令變成 :10,20 s/root/liudehua/g,則只替換從第 10 行到第 20 行的 "root"。
Vim刪除文字
注意,被刪除的內容並沒有真正刪除,都放在了剪貼簿中。將游標移動到指定位置處,按下 "p" 鍵,就可以將剛才刪除的內容又貼上到此處。
Vim複製和貼上文字
Vim其他常用快捷鍵
某些情況下,可能需要把兩行進行連線。比如說,下面的檔案中有兩行文字,現在需要將其合併成一行(實際上就是將兩行間的換行符去掉)。可以直接在命令模式中按下 "J" 鍵,按下前後如圖 10 所示。
圖 10 按下 "J" 鍵前後
如果不小心誤刪除了檔案內容,則可以通過 "u" 鍵來撤銷剛才執行的命令。如果要撤銷剛才的多次操作,可以多按幾次 "u" 鍵。
Vim 儲存退出文字
Vim 的儲存和退出是在編輯模式中進行的,其常用命令如下表所示。
表 11 Vim 常用儲存退出命令
需要注意的是,"w!" 和 "wq!" 等類似的指令,通常用於對檔案沒有寫許可權的時候(顯示 readonly,如圖 12 所示),但如果你是檔案的所有者或者 root 使用者,就可以強制執行。
圖 12 只讀檔案
我是大仁筆記,歡迎一起學習交流。