首先,記住vi編輯器的兩個模式:1、命令模式2、編輯模式。
在乙個unix/linux的shell命令或者乙個以斜槓(/)、問號(?)或冒號(:)開始的vi命令後面使用者需要鍵入回車鍵,而要切換到vi命令模式需要按esc鍵。注意,以冒號(:)或者斜槓(/) 開始的vi命令會顯示在螢幕底部,但其他命令都不會顯示在螢幕上。
開啟、寫入和關閉檔案(使用enter鍵)
vi file 開啟檔名為file的檔案(unix shell命令)
:w 將工作緩衝區的變化寫入預設檔案中
:w file 將工作緩衝區的變化寫入名為file的檔案中
:q 退出vi編輯器
:wq 將工作緩衝區的變化寫入檔案並退出
:q! 不將工作緩衝區的變化寫入檔案並退出vi編輯器
插入文字(vi命令模式下使用)
a 在當前游標位置的右邊新增文字
i 在當前游標的左邊插入文字
a 在當前行的末尾新增文字
i 在當前行的開始出新增文字
o 在當前行的上面新建一行
o 在當前行的下面新建一行
r 替換(覆蓋)當前游標位置以及以後的若干文字
j 連線游標所在行以及下一行,成為一行
移動游標
上下左右方向鍵 向箭頭所示方向移動游標乙個位置
h 向左
j 向下
k 向上
l 向右
空格鍵 向右
backspace 向左
enter 向下移動到下一行的行首
-(連字元鍵) 向上移動到上一行的行首
糾正錯誤(vi命令模式下使用)
x 刪除乙個字元
dd 刪除當前行
ndd 上除當前行在內的n行
u 撤銷上一次操作(最後一步)
u 撤銷對當前行的所有操作
拼寫檢查(unix shell命令)
spell file 顯示問及那file中找到的拼寫錯誤
ispell file 顯示問及那file中找到的拼寫錯誤
搜尋(vi命令模式下使用)
/word 向前搜尋第乙個出現的word
/ 繼續向前搜尋下乙個word
?word 向後搜尋第乙個出現的word
? 繼續向後搜尋下乙個word
跳躍到指定行(vi命令模式使用)
n+ 向前(向下)跳躍n行
n- 向後(向上)跳躍n行
ng 跳躍到行號為n的行,g為go
g 跳躍到檔案的底部
設定行號(vi命令模式下使用)
:set nu 在螢幕上顯示行號
:set nonu 取消行號
複製和貼上(vi命令模式下使用)
"knyy 複製n行到緩衝區"k
"kp 將緩衝區"k的內容貼上到當前行的下面
全域性替換文字(vi命令模式下使用)
:%s/old/new/g 用new替換檔案中的所有old。s為substitution,替換的意思。g為global。
編輯另乙個檔案(vi命令模式下使用)
:e otherfile 編輯檔名為otherfile的檔案
為命令列編輯制定乙個編輯器(unix shell命令)
bindkey -v 指定vi編輯器(用於 tcsh)
visual=vi 指定vi編輯器(用於 ksh)
set -o vi 指定vi編輯器(用於 bash)
緩衝區:
前面講過,vi編輯器設計上是對工作緩衝區的檔案副本進行編輯。在使用vi編輯器的時候,使用者還可以訪問其他緩衝區。總共有36個緩衝區。
◆ 未命名緩衝區
◆ 已命名緩衝區 "a、"b、"c、……、 "z
◆ 已編號緩衝區 "1、"2、"3、……、 "9
未命名緩衝區有時也叫做一般緩衝區。在修改文字時,舊文字並沒有被立刻刪除。vi將舊文字放在未命名緩衝區直到使用者刪除修改更多的文字。這樣就可以實現撤 銷,具體命令為 u。因為vi只有乙個未命名緩衝區,所以只能撤銷一次。
linux unix 下 vi 的用法
vi m 在大多數的 unix 系統中 包括 linux 都內建 vi m 編輯器。也是常用的一種文字編輯工具。但對於用慣了window文字編輯工具的人,都習慣用滑鼠或 上下左右 鍵來移動游標,可對於有些linux unix作業系統中的vi卻不支援 上下左右 鍵移動游標,這就讓一些新手用到它時,很是...
Linux Unix下的vi文字編輯器命令
首先,記住vi編輯器的兩個模式 1 命令模式2 編輯模式。在乙個unix linux的shell命令或者乙個以斜槓 問號 或冒號 開始的vi命令後面使用者需要鍵入回車鍵,而要切換到vi命令模式需要按esc鍵。注意,以冒號 或者斜槓 開始的vi命令會顯示在螢幕底部,但其他命令都不會顯示在螢幕上。開啟 ...
VI下刪除文字中的 M
關於回車與換行 三種行尾格式如下 unix n dos r n mac r 這意味著,如果你試圖把乙個檔案從一種系統移到另一種系統,那麼你就有換行符方面的麻煩。因為ms dos及windows是回車 換行來表示換行,因此在linux下用vim檢視在windows下寫的 行尾後 m 符號。在vim中解...