1. 程式人生 > >Linux vi命令用法

Linux vi命令用法

本文歸納vi命令常見用法,隨作業系統版本不同,可能有所差異,vi命令還是太過個性化了,編輯鍵、功能鍵等幾乎都用自己的約定,如果不是長期使用Unix/Linux,根本記不住,每次用每次查,本文只歸納常用幾個按鍵,能vi進入,能vi儲存,能vi退出就夠用的了。

一、vi開啟編輯檔案

vi <filePathAndName>

示例:vi test.conf,vi /tmp/test.conf,...

如果指定的filePathAndName存在則會自動載入該檔案內容,如果不存在則會自動建立。

注:每行前顯示波浪符號的表示該行為空行。

二、vi進入輸入模式

vi工作於兩種模式:指令模式和輸入模式。指令模式是開啟檔案後的預設模式模式,此時輸入任何字元均被視為控制指令。輸入模式就是普通的編輯模式,此時輸入字元預設為輸入內容。

三、vi編輯指令

1、螢幕翻頁

  • Ctrl+u: 向上翻半屏
  • Ctrl+f: 向上翻一屏
  • Ctrl+d: 向下翻半屏
  • Ctrl+b: 向下翻一屏

2、移動游標指令

移動游標普遍使用的是方向鍵,考慮相容問題,vi定義太多的方向指令,下面只是一小小部分(常用的幾個):

  • space: 游標右移一個字元
  • Backspace: 游標左移一個字元
  • Enter: 游標下移一行
  • nG: 游標移至第n行首
  • n+: 游標下移n行
  • n-: 游標上移n行
  • n$: 游標移至第n行尾
  • 0: 游標移至當前行首
  • $: 游標移至當前行尾

3、插入刪除指令

常用插入、刪除指令如下:

  • i:在當前游標前插入,游標後文本向後移
  • a:從當前游標後插入,游標後文本後移
  • I:在游標所在行首插入(第一個非空白字元前)
  • A:從游標所在行末插入
  • o: 在游標所在行下面新增一行(並進入輸入模式)
  • O: 在游標所在行上方新增一行(並進入輸入模式)
  • x: 刪除游標所在字元,等同於[Delete]功能鍵
  • X: 刪除游標前字元,相當與[Backspace]
  • dd: 刪除游標所在的行
  • r: 修改游標所在字元
  • R: 替換當前字元及其後的字元,直到按 [ESC]
  • s: 從當前游標位置處開始,以輸入的文字替代指定數目的字元
  • S: 刪除指定數目的行,並以所輸入文字代替之
  • do: 刪至行首
  • d$: 刪至行尾

四、vi退出

退出輸入模式,先按一下[ESC]鍵(有時要多按兩下),然後執行:

  • :w ——儲存當前檔案
  • :wq —— 存檔退出(與指令 :x 功能相同)
  • :q —— 直接退出,如已修改會提示是否儲存
  • :q! ——不儲存直接退出

更多vi命令:

除了上文羅列指令外,還有搜尋及替換命令、內容拷貝命令等命令,有興趣讀者可自行Google搜尋。