本節來學習如何使用 vim 編輯文件。
首先學習如何使用 Vim 打開文件。
使用 Vim 打開文件很簡單,例如在命令行模式下打開一個自己編寫的文件 /test/vi.test,打開方法如下:
[root@itxdl ~]# vim /test/vi.test
剛打開文件時 Vim 處于命令模式,此時文件的下方會顯示文件的一些信息,包括文件的總行數和字符數,以及當前光标所在的位置等,此時可以使用插入命令進入輸入模式對文件進行編輯,如圖 1 所示。
圖 1 Vim 打開文件
除此之外,我們還可以利用下表中打開文件的命令格式,針對特定情形使用适當的打開方式,可以大大提高我們的效率。
表 2 Vim 打開文件的快捷方法
同樣,Vim 提供了大量的編輯快捷鍵,主要可分為以下幾類。
從命令模式進入輸入模式進行編輯,可以按下 I、i、O、o、A、a 等鍵來完成,使用不同的鍵,光标所處的位置不同,如表 3 所示。
表 3 插入文本
表 4 Vim 查找目标文本
例如,在 /etc/passwd.vi 文件中查找字符串 "root",則運行命令如圖 5 所示。
圖 5 使用 Vim 進行查找
如果在文件中并沒有找到所要查找的字符串,則在文件底部會出現 "Pattern not found" 提示,如圖 6 所示。
圖 6 未查找到指定字符串的提示
在查找過程中需要注意的是,要查找的字符串是嚴格區分大小寫的,如查找 "shenchao" 和 "ShenChao" 會得到不同的結果。
如果想忽略大小寫,則輸入命令 ":set ic";調整回來輸入":set noic"。
如果在字符串中出現特殊符号,則需要加上轉義字符 "\"。常見的特殊符号有 \、*、?、$ 等。如果出現這些字符,例如,要查找字符串 "10$",則需要在命令模式中輸入 "/10\$"。
表 7 Vim替換文本
例如,要将某文件中所有的 "root" 替換為 "liudehua",則有兩種輸入命令,分别為:
:1, $s/root/liudehua/g或:%s/root/liudehua/g
上述命令是在編輯模式下操作的,表示的是從第一行到最後一行,即全文查找 "root",然後替換成 "liudehua"。如果剛才的命令變成 :10,20 s/root/liudehua/g,則隻替換從第 10 行到第 20 行的 "root"。
注意,被删除的内容并沒有真正删除,都放在了剪貼闆中。将光标移動到指定位置處,按下 "p" 鍵,就可以将剛才删除的内容又粘貼到此處。
某些情況下,可能需要把兩行進行連接。比如說,下面的文件中有兩行文本,現在需要将其合并成一行(實際上就是将兩行間的換行符去掉)。可以直接在命令模式中按下 "J" 鍵,按下前後如圖 10 所示。
圖 10 按下 "J" 鍵前後
如果不小心誤删除了文件内容,則可以通過 "u" 鍵來撤銷剛才執行的命令。如果要撤銷剛才的多次操作,可以多按幾次 "u" 鍵。
Vim 的保存和退出是在編輯模式中進行的,其常用命令如下表所示。
表 11 Vim 常用保存退出命令
需要注意的是,"w!" 和 "wq!" 等類似的指令,通常用于對文件沒有寫權限的時候(顯示 readonly,如圖 12 所示),但如果你是文件的所有者或者 root 用戶,就可以強制執行。
圖 12 隻讀文件
我是大仁筆記,歡迎一起學習交流。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!