◎EXCOMMANDS 以下的命令屬於ex編輯器所用.也就是說要在vi執行時需要先換成exmode(:) vi/exmode切換於exmode輸入vi即可. !shellcommand執行shell命令 "解 #數字顯示選擇的行數,每行前面標示出行號. *buffer_name執行該buffer [行數]a!在該行的下一行,產生輸
◎EX COMMANDS
以下的命令屬於ex編輯器所用.也就是說要在vi執行時需要先換成ex mode (:)
vi/ex mode切換 於ex mode輸入vi 即可.
! shell command 執行shell命令
" 解
# 數字 顯示選擇的行數,每行前面標示出行號.
* buffer_name 執行該buffer
[行數]a! 在該行的下一行,產生輸入的文字. 行數從 0 開始.
:1a! (在第二(1+1=2)行產生輸入文字)
接著會出現如下的訊息
Entering ex input mode
接著您就可以輸入文字 按 ctrl+c 結束
[行數]c! 該行用輸入的文字取代. 行數從1開始.
:1c! (在第一行產生取代文字) 接著會出現如下的訊息
Entering ex input mode
接著您就可以輸入文字取代 按 ctrl+c 結束
[行數圍]d 將處於該行數圍內的文章刪除.
1,3d (表示從第1行到第3行刪除; ,表示到的意思)
[Ee]dit! file_name
[Ee]x! file_name 編輯不同的檔案,此為編輯file_name,[]表示其中之一。
也可以用 :e file_name 或 :edit file_name 編輯不同檔案
exu[sage] [ex命令] 顯示該ex命令的使用方式。
顯示edit的使用方式 :exu edit 顯示結果如下
+-+-+-+-+-+-+-+-+-+
command begin editing another file
Usage:[Ee][dit][!] [+cmd] [file]
Press any key to continue [: to enter more ex commands]:
分別顯示出 簡易敘述 使用語法 結束或繼續
f[ile] [file_name] 顯示檔案訊息 ( 與vi命令中的ctrl+g類似 )
[range] g[lobal] /樣式/ [ex命令] 將符合條件的樣式加以用ex命令處理
可以設定圍,若沒有圍設定表示全部。
若不加命令只會顯示符合樣式的內容。
如 :g/BSD/ (顯示有BSD的行列)
[range] v[lobal] /樣式/ [ex命令] 將不符合條件的樣式加以用ex命令處理
可以設定圍,若沒有圍設定表示全部。
若不加命令只會顯示不符合樣式的內容。
如 :g/BSD/ (顯示沒有BSD的行列)
he[lp] 顯示求助訊息
[行數]i[nsert]! 將所輸入的文字內容,插入自訂的行數.原行數順延
[行數]j[oin]! 將該指定行與下一行合。
[行數]l[ist] 顯示該指定行(圍)。
[圍]m[ove] line 將某圍的內容搬移到某自訂行之後。
若將3-5行搬移到第6行之後,指令為:3,5m6
mk[exrc][!] file_name 將縮寫、編輯參數及map寫到file_name
[Nn][ext][!] [file ...] 繼續編輯某一檔案。
pre[serve] 以ex -r 能夠恢復的形式儲存檔案。
[Pp]rev[ious][!] 編輯先前的檔案。
[圍] p[rint] 顯示圍內容
[行數] pu[t] 將buffer中的內容在特定行貼上。
q[uit][!] 強制離開
rec[over] file 回復先前用pre儲存的檔案,等同於vi -r filename
:檔案放在/var/tmp/vi.recover資料夾下
se[t] 設定環境變數,後接想要設定的變數(值)
se[t] [all] 顯示全部環境變數
sh[ell] 跳脫編輯,回到shell下,可執行其他動作。
用exit離開shell。
so[urce] file 從檔案中讀取命令
[range] s[ubstitute] [/被取代的樣式/取代樣式/]
在某圍內將符合的樣式用取代樣式取代。
su[spend][!] 暫停程式進行,回到shell,用fg回復
st[op][!] 同su!
ve[rsion] 顯示vi編輯器的版本。
vi[sual] 進入vi (ex mode用)
viu[sage] [command] 顯示vi command的語法,若沒有特別指定,則顯示全部。
[圍] w[rite][!] [>>] [file_name] 將圍內容附加到檔案file_name。
[圍] w[rite][!] [file_name] 將圍內容另存新檔file_name。
[圍] wq[!] [>>] [file_name] 將圍的內容附加到檔案file_name並離開。
x[!] 強制存檔
◎參考資料: man vi