vi用法
vi是unix/linux系統下最強大的文字編輯器(另乙個是emacs),其命令較多,完全基於鍵盤操作,而當下流行的各種linux版本基本上都內建安裝了vim,vim可以看作是vi的增強型版本,兩者用法大致相同。習慣了使用圖形化文字編輯器的同學學習vi編輯器比較費勁、難以適應,為了方便大家學習,我在這裡著重介紹一下vi的核心用法。
vim [-c] [-rr] [file…]
選項』-c』,將以相容模式啟動,使vim像vi一樣開啟文字檔案;
選項「-r」可以恢復上次儲存失敗的檔案,若後面不跟檔名『file』將顯示所有可用恢復資料的檔案;
選項「-r"以唯讀模式開啟文字檔案;
命令模式
所有鍵入的鍵都被解釋成命令,如x就是刪除乙個字元的命令。
輸入模式
鍵入的任何內容都被寫入編輯緩衝區中,如鍵入」how are you",那麼這11個字元被插入到編輯緩衝區中。
退出前必須在命令模式中輸入一條退出命令,若在輸入械中,則就先切換到命令模式中再輸入退出命令。
+zz按下並保持,再按兩次z鍵,即可退出並儲存當前檔案。
:wq輸入字元「:wq」,然後再按回車鍵,即可退出並儲存當前檔案。
輸入模式下可能輸入一些錯誤的字元,你會想對其中的個別字元進行修正。鍵說明
(回退鍵)或(刪除鍵)
刪除鍵入的最後乙個字元
^w刪除鍵入的最後乙個單詞
^x或^u
刪除整行
注:「^」表示按下ctl+key鍵,如「^u」表示同時按下「ctl」和「u」鍵。單字元長度的移動
鍵移動說明
h或或游標左移乙個字元長度的位置
l或或游標右移乙個字元長度的位置
j或游標下移乙個位置
k或游標上移乙個位置
單詞長度的移動
鍵移動說明
w游標移動到下乙個單詞的詞首
w以忽略標點的方式,游標移動到下乙個單詞的詞首
e游標移動到下乙個單詞的詞尾
e以忽略標點的方式,游標移動到下乙個單詞的詞尾
b游標移動到上乙個單詞的詞首
b以忽略標點的方式,游標移動到上乙個單詞的詞首
行距離的移動
鍵移動說明
-游標移動到上一行的開頭
+或游標移動到下一行的開頭
0(數字,非字母「o")
游標移動到當前行的開頭
$游標移動到當前行的末尾
^游標移動到當前行的第乙個非空格、非製表符的的字元上
較大範圍的移動
鍵移動說明
)向前移動到下乙個句子
(向後移動到上乙個句子
}向前移動到下乙個段落
或showmode
smdoff
當進入輸入模式時顯示乙個提醒
wrapscan
wsoff
writeany
waoff
允許一需要的過載!就可以寫入任何檔案
lines
——24
文字的行數
shiftwidthsw8
autoindent使用的空格數量
tabstopts8
製表符間距
wrapmarginwm0
自動換行的頁邊距
大多數據的選項都有縮寫,為了方便快捷,可使用縮寫代替全稱。如以下命令是等價的。
:set showmod nonumber tabstop=4
:set smd nonu ts=4
vi命令說明r
在空格處鍵入r,再鍵入回車符,當前行將在此空格處**為兩行
j在當前行鍵入j和回車符,當前行與下一行將合併為一行
ex命令
說明:x,[y]coz
源行x(至y)複製到目標行z下面
:x,[y]mz
源行x(至y)移動到目標行z下面
例:複製第5行,插入到11行下面
:5co11
移動第7至9行,插入到15行下面
:7,9m15
首行到當前行之間的內容移動到編輯緩衝區的末尾
:1,.m$
當前行到末行之間的內容移動到編輯緩衝區的開頭(行0代表緩衝區的開頭)
:.,$m0
命令說明
:! shell-cmd
暫停vi,讓shell執行shell-cmd命令,shell命令 執行結束後,控制將返回給vi
:! !
再次執行上次的shell命令
:! sh
啟動乙個新的預設shell,在使用完這個shell之後,可以按^d鍵或輸入exit來停止這個shell,重新回到vi中
:! shell-name
啟動乙個新的指定shell-name的shell
ex命令
說明nrfile
在第n行後插入檔案file的內容
r file
在當前行後插入檔案file的內容
nr !shell-cmd
在第n行後插入shell-cmd的輸出
r !shell-cmd
在當前行後插入shell-cmd的輸出
ex命令
說明:w
將資料寫入原始檔案
:w file
將資料寫入到新檔案file中
:w! file
覆蓋乙個已有的檔案file中
:w>> file
將資料追加到指定的檔案file中
在編輯乙個檔案時,臨時決定到編輯另乙個檔案,其實不用退出vi就可以編輯其他檔案,可用:e命令 ,後面跟乙個新的檔名即可,語法:
:e file
而在編輯新檔案時,編輯緩衝區的原有內容將丟失,因此此時vi會提醒你儲存對原來檔案修改的儲存,不儲存不能切換到新檔案的編輯,此時可用:w儲存資料。如果要忽略這種保護,可用:e!
ex命令
說明e file
編輯新的檔案file
e!重新編輯當前檔案file,忽略自動檢查(丟棄所有的修改)
e! file
編輯指定的新檔案file,忽略自動檢查(丟棄對原來檔案所有的修改)
為經常使用的單詞或表示式建立縮寫,可以用:ab命令,語法是:
:ab [short long]
刪除乙個縮寫,可以有命令:una,語法是:
:una short
例 ,為暑假的實習工作準備一張履歷表,需要不停地輸入字串「exceptionally gifted",重複輸入會讓人感到很厭煩,此時可建立乙個縮寫,減少大量的文字輸入工作。
:ab eg exceptionally gifted
有時覺得此縮寫無用了,可以刪除它了。
:una eg
文字編輯器Vim Vi
1.簡介 vim vi是乙個功能強大的全螢幕文字編輯器,是linux unix上最常用的文字編輯器,它的作 用是建立 編輯 顯示文字 檔案。vim vi沒有選單,只有命令。2.工作模式 3.插入命令 a 在游標後附加文字 a 在本行行末附加文字 i 在游標前插入文字 i 在本行開始插入文字 o 在游...
Linux 文字編輯器Vim Vi
linux 文字編輯器vim vi 1.vim vi簡介 vim vi是乙個功能強大的全螢幕文字編輯器,是linux unix上最常用的文字編輯器,它的作用是建立 編輯 顯示文字檔案 vim vi沒有選單,只有命令 2.vim vi工作模式 3.插入命令 命令 作用 a 在游標後附加文字 a 在本行...
文字編輯 Vim Vi
2 文字 ascii,unicode 3 vim vi improved 1 vi vim是一種純文字編輯器,它不像word可以排版,可以調整字型大小,可以改變字型等等,vi vim只是乙個文字編輯工具,它只能對文字的內容進行操作,比如新增內容 修改內容 刪除內容等等 1 基本模式 1 命令模式 2...