相信vi是什麼就不用我多介紹了,這個工具從unix誕生以來一直是終端下的標準編輯器。幾乎每個unix或類unix作業系統都提供了vi。vim是vi improved的縮寫,功能比起vi來說有了很大的擴充套件。我用的是vi improved 6.3。
說實話,vi我用得不太好,遠遠不及emacs熟練,不過它也是我工作中不可缺少的利器之一,在終端裡逛蕩的時候看哪個檔案不順眼就拿vi去改改:) 我的另乙個習慣是在有x的系統上往往用emacs,而沒有x的系統上往往用vi。寫下這份筆記是為了防止我忘記掉一些快捷鍵。
k 上h l 左 右
j 下
^ 移動到該行第乙個非空格的字元處
w 向前移動乙個單詞,將符號或標點當作單詞處理
w 向前移動乙個單詞,不把符號或標點當作單詞處理
b 向後移動乙個單詞,把符號或標點當作單詞處理
b 向後移動乙個單詞,不把符號或標點當作單詞處理
0 到行首
$ 到行尾
gg 到頁首
g 到頁末
行號+g 跳轉到指定行
ctrl+g 查詢當前行資訊和當前檔案資訊
fx 向右跳到本行字元x處(x可以是任何字元)
fx 向左跳到本行字元x處(x可以是任何字元)
tx 和fx相同,區別是跳到字元x前
tx 和fx相同,區別是跳到字元x後
ctrl+u 向上滾動半屏
ctrl+d 向下滾動半屏
zz:退出vi並儲存:q! :退出vi,不儲存
:wq :退出vi並儲存
.:重複上一次操作
c-n 匹配下乙個關鍵字c-p 匹配上乙個關鍵字
o:在游標下方新開一行並將游標置於新行行首,進入插入模式。o:同上,在游標上方。
a:在游標之後進入插入模式。
a:同上,在游標之前。
r:進入替換模式,直到按下esc
set ***:設定***選項。
x: 刪除當前游標下的字元rx:將當前游標下的字元更改為x(x為任意字元) ~: 更改當前游標下的字元的大小寫dw:刪除游標之後的單詞剩餘部分。
d$:刪除游標之後的該行剩餘部分。
dd:刪除當前行。
c: 功能和d相同,區別在於完成刪除操作後進入insert mode
cc:也是刪除當前行,然後進入insert mode
qcharacter:開始錄製巨集,character為a到z的任意字元q:終止錄製巨集
@character:呼叫先前錄製的巨集
u: 撤銷最後執行的命令u: 修正之前對該行的操作
ctrl+r:redo
c-w c-n 增加framec-w c-c 減少frame
c-w c-w 切換frame
c-w c-r 交換兩個frame
/ + 字串:即可在當前檔案查詢相應的字串。設定高亮繼續查詢同乙個字串,按n或/(enter),若要反向繼續查詢,按shift+n。
若要逆向查詢,用?代替 /
.*^%~$ 在vi中具有特殊含義,若需要查詢則應該加上轉義字元"/"
% :查詢配對的括號。
s/old/new/g:替換old為new,若沒有g則表示只替換乙個。
若要每個替換都向使用者詢問則應該用gc選項
:set hlsearch 設定高亮增量查詢:set nohlsearch 關閉高亮
:nohlsearch 關閉當前已經設定的高亮
:set incsearch 設定增量查詢vim支援多達26個剪貼簿:set noincsearch 關閉增量查詢
所有刪除的內容自動被儲存,可以用p鍵貼上
對**自動格式化 gg=g
功能強大的編輯器 Vi
k 上 h l 左 右 j 下 移動到該行第乙個非空格的字元處 w 向前移動乙個單詞,將符號或標點當作單詞處理 w 向前移動乙個單詞,不把符號或標點當作單詞處理 b 向後移動乙個單詞,把符號或標點當作單詞處理 b 向後移動乙個單詞,不把符號或標點當作單詞處理 0 到行首 到行尾 gg 到頁首 g 到...
功能強大的編輯器 Vi
功能強大的編輯器 vi 相信vi是什麼就不用我多介紹了,這個工具從unix誕生以來一直是終端下的標準編輯器。幾乎每個unix或類unix作業系統都提供了vi。vim是vi improved的縮寫,功能比起vi來說有了很大的擴充套件。這裡用的是vi improved 6.3。k 上 h l 左 右 j...
功能最強大的編輯器 vi
vi是所有unix系統都會提供的螢幕編輯器,它提供了乙個視窗裝置,通過它可以編輯檔案。當然,對unix系統略有所知的人,或多或少都覺得vi超級難用,但vi是最基本的編輯器,所以希望讀者能好好把它學起來,以後在unix世界裡必將暢行無阻 游刃有餘,因為其他幾種文字處理器並非unix標準配備。說不定別人...