11個超級棒的Vi技巧和竅門
是否你剛剛接觸 Vi 還是想進(jìn)階,這些技巧可以很快讓你成為高級用戶。
Vi 編輯器是 Unix 和像 Linux 這樣的類 Unix 系統(tǒng)中 Linux ***的編輯器之一。無論您是 vi 新手還是想進(jìn)階,這里有 11 個技巧可以增強(qiáng)你使用的方式。
編輯
編輯長文本時可能很難受,特別是編輯其中某一行時,需要移動許久才能到這行。這有個很快的方法:
1、 :set number
這個命令可是在編輯器左邊顯示行號。
您可以在命令行中輸入 vi +26 samp.txt
命令直接打開文件到達(dá) 26 行,在 vi 編輯器中也可以輸入 :26
跳轉(zhuǎn)到 26 行。
快速導(dǎo)航
2、 i
將工作方式從“命令模式”更改為“輸入模式”,并在當(dāng)前光標(biāo)位置開始插入內(nèi)容。
3、 a
除了是光標(biāo)之后開始插入內(nèi)容,與上面的效果是一樣的。
4、 o
在光標(biāo)的下一行位置開始插入內(nèi)容。
刪除
如果您發(fā)現(xiàn)錯誤或錯別字,能快速的修正是很重要的。好在 Vi 都事先想好了。
了解 Vi 的刪除功能,保證你不會意外按下某個鍵并***刪除一行或多段內(nèi)容,這點至關(guān)重要。
5、 x
刪除當(dāng)前光標(biāo)的字符。
6、 dd
刪除當(dāng)前行 (是的,整行內(nèi)容!)
下面看可怕的部分:30dd
從當(dāng)前行開始刪除以下 30 行!使用此命令請慎重。
搜索
您可以在“命令模式”搜索關(guān)鍵字,而不用在大量文本內(nèi)容中手動導(dǎo)航查找特定的單詞或內(nèi)容。
7、 :/<keyword>
搜索 < >
中的單詞并將光標(biāo)移動到***個匹配項。
8、 導(dǎo)航到該單詞的下一個匹配項,請輸入 n
并繼續(xù)按下, 直到找到您要找的內(nèi)容。
例如,在這個圖像中我要搜索包含 ssh
的內(nèi)容, Vi 光標(biāo)就會突出***個結(jié)果的開始位置。
按下 n
之后, Vi 光標(biāo)就會突出下一個匹配項。
保存并退出
開發(fā)人員 (或其他人) 可能會發(fā)現(xiàn)這個命令很有用。
9、 :x
保存您的工作并退出 Vi 。
10、 如果你想節(jié)省哪怕是納秒,那么這有個更快的回到終端的方法。不用在鍵盤上按 Shift+:
,而是按下 Shift+q
(或者大寫字母 Q ) 來進(jìn)入 Ex 模式 。但是如果你只是想按下 x
來保存退出,那就沒有什么區(qū)別(如上所示)。
替換
如果您想將文中的某個單詞全部替換為一個單詞,這有個很巧妙的招式。例如,如果您想在一個大文件中將 “desktop” 替換為 “laptop” ,那么單調(diào)的搜索每個出現(xiàn)的 “desktop” 將其刪掉,然后再輸入 “laotop” ,是很浪費時間的。
11、 :%s/desktop/laptop/g
這個命令將在整個文件中的 “desktop” 用 “laptop” 替換,他就像 Linux 的 sed
命令一樣。
這個例子中我用 “user” 替換了 “root” :
這些技巧應(yīng)該能幫組任何想開始學(xué) Vi 的人。我有遺漏其他巧妙的提示嗎?請在評論中分享他們。