unix
vi編輯器命令總結
vi是 unix重要的工具,把幾年來自己使用
一、unix編輯器概述
編輯器是使用計算機的重要工具之一,在各種作業系統中,編輯器都是必不可少的部件。unix及其相似的ix
作業系統系列中,為方便各種使用者在各個不同的環境中使用,提供了一系列的ex編輯器,包括 ex, edit,ed 和
vi.其中ex,edit,ed都是行編輯器,現在已很少有人使用,unix提供他們的原因是考慮到滿足各種使用者特別
是某些終端使用者的需要。
值得慶幸的是,unix提供了全螢幕的vi
編輯器,這使我們的工作輕鬆不少。不少dos使用者抱怨vi
編輯器不象
dos下的編輯器如edit那麼好用,這是因為vi
考慮到各種使用者的需要,沒有使用某些通用的編輯鍵(在各個
不同的終端機上他們的定義是不同的,在某些終端機上甚至沒有這些鍵)。而是採用狀態切換的方法,但這
只是習慣的問題,一旦你熟練的使用上了vi
你就會覺得它其實也很好用。
雖然 vi
採用了狀態切換的方法,但電腦的硬體及作業系統多種多樣,某些電腦的鍵盤上沒有特定的幾個功
能鍵!那麼不就有某些功能不能用了?這個問題在 unix 系統上也一樣,幾乎各大電腦廠商都有自己的
unix 系統,而 vi
的操作方法也會隨之有點出入。這裡我們採用 pc 的鍵盤來說明 vi
的操作,但在具體
的環境中還要參考相應的資料,這一點是值得注意的。
二、vi
入門(一)、進入vi
在系統提示字元(如$、#)下敲入vi
<檔名稱>,vi
可以自動幫你載入所要編輯的檔案或是開啟乙個新
檔案(如果該檔案不存在或缺少檔名)。進入 vi
後螢幕左方會出現波浪符號,凡是列首有該符號就代
表此列目前是空的。
(二)、兩種模式
如上所述,vi
存在兩種模式:指令模式和輸入模式。在指令模式下輸入的按鍵將做為指令來處理:如輸入
a,vi
即認為是在當前位置插入字元。而在輸入模式下,vi
在指令模式下鍵入:q,:q!,:wq或(注意:號),就會退出vi
。其中:wq和是存檔退出,而:q是直接退出,
如果檔案已有新的變化,vi
會提示你儲存檔案而:q命令也會失效,這時你可以用:w命令儲存檔案後再用:q
退出,或用:wq或命令退出,如果你不想儲存改變後的檔案,你就需要用:q!命令,這個命令將不儲存檔案
而直接退出vi
。(四)、基本編輯
配合一般鍵盤上的功能鍵,像是方向鍵、[insert] 、[delete] 等等,現在你應該已經可以利用 vi
來編輯檔案
了。當然 vi
還提供其他許許多多功能讓文字的處理更為方便。
何謂編輯?一般認為是文字的新增、修改以及刪除,甚至包括文字區塊的搬移、複製等等。先這裡介紹 vi
的如何做刪除與修改。(注意:在 vi
的原始觀念裡,輸入跟編輯是兩碼子事。編輯是在指令模式下操作
的,先利用指令移動游標來定位要進行編輯的地方,然後才下指令做編輯。)
刪除與修改檔案的命令:
x: 刪除游標所在字元。
dd :刪除游標所在的列。
r :修改游標所在字元,r 後接著要修正的字元。
r: 進入取替換狀態,新增文字會覆蓋原先文字,直到按 [esc] 回到指令模式下為止。
s: 刪除游標所在字元,並進入輸入模式。
s: 刪除游標所在的列,並進入輸入模式。
其實呢,在pc上根本沒有這麼麻煩!輸入跟編輯都可以在輸入模式下完成。例如要刪除字元,直接按
[delete] 不就得了。而插入狀態與取代狀態可以直接用 [insert] 切換,犯不著用什麼指令模式的編
輯指令。不過就如前面所提到的,這些指令幾乎是每台終端機都能用,而不是僅僅在 pc 上。
在指令模式下移動游標的基本指令是 h, j, k, l 。想來各位現在也應該能猜到只要直接用 pc 的方向
鍵就可以了,而且無論在指令模式或輸入模式下都可以。多容易不是。
當然 pc 鍵盤也有不足之處。有個很好用的指令 u 可以恢復被刪除的文字,而 u 指令則可以恢復游標所
在列的所有改變。這與某些電腦上的 [undo] 按鍵功能相同。
三、附件:vi
│向上半頁 │ │
├—————┼—————————————┼—————┤
│[ctrl]
用來處理區段拷貝與搬移的辦法。
某些 vi
版本,例如 linux 所用的 elvis 可以大幅簡化這一坨指令。如果稍微觀察一下這些編輯指令
就會發現問題其實是定範圍的方式有點雜,實際上只有四個指令罷了。指令 v 非常好用,只要按下 v 鍵,
游標所在的位置就會反白,然後就可以移動游標來設定範圍,接著再直接下指令進行編輯即可。
對於整列操作, vi
另外提供了更方便的編輯指令。前面曾經提到過刪除整列文字的指令 dd 就是其中乙個
;cc 可以修改整列文字;而 yy 則是複製整列文字;指令 d 則可以刪除游標到該列結束為止所有的文字。
(四)、檔案操作指令
檔案操作指令多以 : 開頭,這跟編輯指令有點區別。
:q 結束編輯(quit)
:q! 不存檔而要放棄編輯過的檔案。
:w 儲存檔案(write)其後可加所要存檔的檔名。
:wq 即存檔後離開。
zz 功能與 :wq 相同。
與:wq相同
vi編輯器命令總結
開啟後 直接進入 編輯狀態 輸入狀態 a i o a i o esc 命令狀態 wq 表示儲存退出 shift z z zz表示儲存退出 wq 表示強制 命令狀態 1 顯示行號 set nu number 2 取消行號 set nonu 3 讀取外部內容 r filename 4 執行外部命令 命令...
Ubuntu下VI編輯器命令總結
vi編輯器有三種模式 1 命令列模式 游標移動 複製 貼上 刪除 command mode 2 插入模式 編輯文字 insert mode 3 底行模式 查詢和替換 last line mode 注意 1 當不知道處於何種模式時,按esc鍵返回到命令列模式。2 wq write quit 儲存退出 ...
Vim編輯器常用的命令總結
前言 作為開發者,有兩個頂級編輯器,即使你不用,你也一定要知道它們是什麼 編輯器bmqlwjrlpj之神 vim 神的編輯器 所以本文就來介紹vim以及它的常用命令,vim是從vi發展出來的乙個文字編輯器。補全 編譯及錯誤跳轉等方便程式設計的功能特別豐富,在程式設計師中被廣泛使用 vim鍵盤圖中文版...