使用 vi / vim 編輯器的基本操作

vi 是Linux 系統(tǒng)中最常用的文本編輯器,而 vim 是 vi 的升級版,vim 不但可以用不同顏色顯示文字內(nèi)容,還能夠進行諸如 shell script, C program 等程序編輯功能,你可以將 vim 視為一種程序編輯器。
這里只列出常用操作而不是所有操作!

1. 用vi / vim 打開文件

在Centos7 中如果你是root用戶,可以使用命令 vi [filename] 或者 vim [filename]打開文件。
如果你不是root 用戶,要使用vi 打開文件就必須使用絕對路徑,/bin/vi [filename], 要使用vim 打開文件就直接使用命令 vim [filename] 或者 vi [filename],這是因為非root 用戶的vi 命令已經(jīng)被默認定義為 vim 命令了(如圖一所示):

使用alias 命令發(fā)現(xiàn) vi='vim'

2. 使用vi / vim 的三種模式

  • 一般模式

以 vi /vim 打開一個文件就直接進入一般模式了。在這個模式中, 你可以使用『上下左右』按鍵來移動光標,你可以使用『刪除字符』或『刪除整行』來處理文件內(nèi)容, 也可以使用『復(fù)制、粘貼』來處理你的文件數(shù)據(jù)。

  • 編輯模式

在一般模式中,按下『i, I, o, O, a, A, r, R』等任何一個字母之后會進入編輯模式。注意了!通常在 Linux中,按下這些按鍵時,在畫面的左下方會出現(xiàn)『 INSERT 或 REPLACE 』的字樣,此時才可以進行編輯。而如果要回到一般模式時, 則必須要按下『Esc』這個按鍵即可退出編輯模式。

  • 指令列命令模式

在一般模式當中,輸入『 : / ? 』三個中的任何一個按鈕,就可以將光標移動到最底下那一行。查找關(guān)鍵字、讀取、存盤、大量取代字符、離開 vi / vim、顯示行號等等的動作則是在此模式中達成的。

3. 一般模式的使用方法
  • 上下左右箭頭:上下左右移動光標,如果要移動多次光標,可以在先輸入數(shù)字再按箭頭,比如 “30 向下的箭頭” 就可以使光標直接向下移動30行。
  • [Page Down], [Page Up] 按鍵:向下,向下翻一頁。同樣的,可以在按鍵前先輸入數(shù)字 n,表示一次性翻 n 頁。
  • [Home], [End]:光標移動到這一行的最左邊,最右邊。
  • G: 移動到這個文件的最后一行, 如果前面加了數(shù)字 n,就代表移動到第 n 行。
  • gg: 移動到第一行,相當于 1G。
  • /word: 向下查找 word 字符串。
  • ?word: 向上查找 word 字符串。
  • n: 重復(fù)前一個查找動作一次。
  • N: 反向重復(fù)前一個查找動作一次。
  • :n1,n2s/word1/word2/g: 把 n1 行和 n2 行之間的 word1 替換為 word2。
  • :n1,n2s/word1/word2/gc: 把 n1 行和 n2 行之間的 word1 替換為 word2,每次替換之前需要用戶確認是否替換。
  • x, X: 向后,向前刪除一個字符。
  • dd: 刪除光標所在的那一整行,可以結(jié)合 n 使用,即: ndd, dnG, d[Home], d[End]。
  • yy: 復(fù)制光標所在的那一列,可以結(jié)合 n 使用,即: nyy, ynG, y[Home], y[End]。
  • p, P: 將所復(fù)制的數(shù)據(jù)向下,向上粘貼。
  • u: 撤銷。
  • [Ctrl] + r: 重做。
  • .: 重復(fù)剛才的動作。
4. 編輯模式

i: 進入編輯模式。I, a, A, o, O 也是進入編輯模式,區(qū)別是進入以后光標的位置不同。
[Esc]: 退出編輯模式,回到一般模式。

5. 命令模式
  • :w 將編輯的數(shù)據(jù)寫入硬盤文件中。
  • :w! 當文件為“只讀”時,強行寫入硬盤。(不一定能成功寫入,這是跟你對該文件的權(quán)限有關(guān))
  • :q 關(guān)閉vim。
  • :q! 當你修改過文件,又不想保存時,使用 :q! 可以強制退出。
  • :wq 保存后關(guān)閉vim。
  • :w [filename] 另存為。
  • :r [filename] 在該頁面游標所在行的后面讀入[filename]文件。
  • :n1,n2 w [filename] 把n1到n2行的內(nèi)容另存為[filename]文件。
  • :! command 暫時離開vim,執(zhí)行command命令,比如::! pwd 表示查看當前目錄。
  • :set nu 顯示行號。
  • :set nonu 隱藏行號。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容