1. 程式人生 > >vim編輯和命令模式下的實踐

vim編輯和命令模式下的實踐

pass 比較 編輯模式 root 粘貼 vim編輯 令行 發現 區別

編輯模式
i      在光標當前的地方開始編輯文檔
I      在光標所在的行首開始編輯
o     從光標所在的行的下面一行開始編輯
O    從光標所在的行的上面一行開始編輯
a    在光標所在行的後一個字符開始編輯
A    在光標所在行的行末開始編輯

命令模式和實踐


查找文件格式:
/需要查找的內容
如:/dnsmasq 直接回車就可以高亮顯示出匹配查找的內容,
按n 是查找下一個
按N 是往上查找

也可以用?查找需要的內容,n和N的用法和/相反

命令行模式下的替換
1,100s/new/old/g
1,100是需要替換的範圍,表示1到100行進行替換,s表示行
g 是全局替換,即替換匹配到的所有內容

1$s/new/old/g  是替換文件內所有的匹配字段

如果文件中需要替換一個路徑或者有特殊字符的需要脫意字符\或者換一個分割符把脫意字符換成#號代替脫意
1,100s#/root#/ROOT#g passwd   將1到最後一行中的/root替換成/ROOT,g立即替換所有的不進行確認

wq!   保存退出

q!    不保存退出
x    退出不跟新mtime時間

wq和x的區別:在更改時候時候保存退出是一樣的,在進入一個文件的時候如果什麽操作都沒有做就直接保存退出的話wq是改mtime的,x是不改mtime的

set number  顯示行號                 #縮寫set nu
set nonumber  取消顯示行號     #縮寫set nonu
nohl   取消高亮

vim 粘貼代碼自動縮進會導致排序全亂

用vim打開一個空白文檔,然後把已經復制的代碼給粘貼進來,發現它有自動縮進功能,最終導致粘貼的文本一行比一行靠右,看起來亂成一團。比較快的解決辦法是,在粘貼文檔前,在命令行模式下,輸入:set noai nosi
然後按‘i‘ 進入編輯模式,再粘貼已經復制的代碼內容,這樣就不會自動縮進。

有些情況下set noai nosi 命令並不好用,可以嘗試使用set paste來操作

vim編輯和命令模式下的實踐