Vi 是一個功能強大的文字編輯器,幾乎所有的 Linux 系統都會內建它,甚至是直接嵌入。某些時候你可能會遇到在一些缺乏友善的文字編輯器的系統中進行文件編輯,因此熟悉 Vi 的操作是相當重要的。
不像 Nano——是非常簡單的終端文字編輯器,Vi 並不會在把鍵盤的快捷鍵顯示在螢幕上。它是一個簡約的文字編輯器,具備插入和命令模式。
Vi 是一個終端應用程式,因此你需要從終端視窗中使用它。使用「vi/path/to/file」的命令來開啟舊檔。「vi/path/to/file」的指令甚至可以在檔案不存在的情況下使用;這時 Vi 會建立一個新檔,並根據你所指定的位置來儲存。
如果你想要編輯的事系統檔案,請記得使用 sudo。就好比,如果你想要編輯 fstab file 的話,你就必須輸入「sudo vi/etc/fstab」。如果你使用的是沒有 sudo 的非 Ubuntu 版本,那妳可以使用「su」來取代 sudo。
當你使用 vi 開啟檔案時就會看到這個畫面。看起來你可以直接編輯文件,但實際上你卻做不到。Vi 是一個簡約的文字編輯器並且需要使用命令模式開啟。如果你嘗試在這個畫面下輸入任何的東西,你可能會遇到無法預期的效果。
在命令模式下,你可以使用方向鍵來移動游標。按下「x」鍵可以讓你刪除游標下的字元。還有其他可以讓你刪除字元的方法——好比,輸入「dd」(按 d 鍵兩下)可以刪除整列的文字。
你可以在命令模式下選取、複製、剪下、貼上文字。將游標移動你想複製的文字的左邊或右邊,然後按下「v」鍵。移動你的游標來選取文字,接著按下「y」來複製選取的文字或按下「x」把選取的文字剪下。然後你可以把游標移動到你想貼上文字的位置,按下「p」鍵就可以貼上。
除了命令模式外,你或許要需要瞭解插入模式——讓你在 Vi 中插入文字的模式。你應該知道如何進入插入模式,因為非常簡單——只要在命令模式下按下「i」鍵即可。然後你就可以開始打字了,這時 Vi 就不會把你輸入的文字當作指令來處理。
一旦你完成了文字的輸入,只要按下「Escape」鍵就可以回到指令模式。
在指令模式下,你可以存檔和離開 Vi。首先,你必須確保你目前處在指令模式下,按一下「Escape」鍵吧(別擔心,就算你已經在指令模式了,按下「Escape」也不會怎樣)。
輸入:「wq」然後按下 Enter 來存檔並離開 vi。你也可以將這個兩個指令拆開——譬如,輸入:「w」後按下 Enter 會把檔案存檔到硬碟且不會離開 Vi,或輸入:「q」在不存檔的情況下離開 Vi。
如果你已經改動過開啟的檔案,Vi 就不會讓你在未存檔就離開,因此你可以輸入:「q!」 然後按下 Enter 忽略這個警告並離開 Vi。
如果你想找一個簡單易用的文字編輯器,是時候放棄 Nano 了。雖然多數的 Linux 發行版都逐漸內鍵 Nano,但嵌入式系統和其他精簡化的環境仍保有內鍵 Vi。
作者:Chris Hoffman on 01/11/12|譯者:t7yang
原文與圖片來源:How-To Geek