VIM命令模式與輸入模式切換

2021-07-13 20:07:32 字數 2433 閱讀 9740

標籤: vim

insert

unix

文件工作

2012-05-08 16:48

7016人閱讀收藏 

舉報

linux(44)

目錄(?)

[+]

vi是unix和類unix環境下的可用於建立檔案的螢幕編輯器。vi有兩種工作模式:命令模式和文字輸入模式。啟動vi需要輸入vi,按[spacebar]鍵並輸入檔名後回車。

vi從命令模式切換到文字輸入模式。每個鍵以不同方式使vi進入文字輸入模式。按[esc]鍵使vi從文字輸入模式回到命令模式。

表1列出了vi從命令模式切換到文字輸入模式的命令鍵及其功能。

表1 切換到文字輸入模式的命令鍵

功能i

在游標左側輸入正文

i在游標所在行的行首輸入正文

a在游標右側輸入正文

a在游標所在行的行尾輸入正文

o在游標所在行的下一行增添新行,游標位於新行的行首

o在游標所在行的上一行增添新行,游標位於新行的行首

說明:1. 游標的位置由雙下劃線(═)標明。

2. 當前行指游標所在的那一行。

只有一種方式進入vi,但是有幾種方式退出vi,退出方式的選擇取決於如何處理編輯後的檔案。

除了zz命令外,這些命令都以:開始,用[return]結束命令列。表2列出了vi編輯器的退出命令及其功能。

表2 vi編輯器的退出命令

功能

:wq儲存檔案,退出vi編輯器

:w儲存檔案,但不退出vi編輯器

:q退出vi編輯器

:q!不儲存檔案,退出vi編輯器               

zz儲存檔案,退出vi編輯器

這些鍵只適用於命令模式。表3列出了vi編輯器的退出命令及其功能。

表3 命令模式下vi編輯器的文字修改鍵

功能x

刪除游標位置指定的字元

dd刪除游標所在的行

u撤銷最近的修改

u撤銷對當前行上做的所有修改

r替換游標位置上的乙個字元

r替換從游標位置開始的字元,同時改變vi到文字輸入模式

.(點)

重複上一次的修改

在命令模式下,這些鍵可以在文件中移動游標。表4列出了vi編輯器的退出命令及其功能。

表4 vi的游標移動鍵

功能

h或[   ]

將游標向左移動一格

j或[   ]

將游標向下移動一格

k或[   ]

將游標向上移動一格

l或[   ]

將游標向右移動一格

$將游標移到當前行的行尾

w將游標向右移乙個字

b將游標向左移乙個字

e將游標移到字尾

0(零)

將游標移到當前行的行首

[return]鍵

將游標移到下一行的行首

[spacebar]鍵

將游標向右移動一位

[backspace]鍵

將游標向左移動一位

注意:在文字輸入模式下避免使用游標鍵(箭頭鍵)。因為在某些系統中,游標鍵被解釋為普通的ascii 字元。如果在文字輸入模式下使用游標鍵,那麼對應的ascii字元將被插入檔案中。

這些鍵用來重新安排使用者檔案中的文字,在vi的命令模式下可用。表5列出了vi編輯器的剪下和貼上鍵及其功能。

表5 vi編輯器的剪下和貼上鍵

功能d

刪除指定位置的文字,並存到臨時的緩衝區中。可以使用put操作符(p或p鍵)訪問這個緩衝區

y將指定位置的文字複製到臨時緩衝區。可以使用put操作符訪問這個緩衝區

p將指定緩衝區的內容放到當前游標的位置之上

p將指定緩衝區的內容放到當前游標的位置之下

翻頁鍵用來大塊滾動使用者的檔案,在vi的命令模式下可用。表6列出了vi編輯器的翻頁鍵及其功能。

表 6  vi編輯器的翻頁鍵

功能

[ctrl-d]

將游標向下移到檔案尾,通常每次移動12行

[ctrl-u]

將游標向上移到檔案頭,通常每次移動12行

[ctrl-f]

將游標向下移到檔案尾,通常每次移動24行

[ctrl-b]

將游標向上移到檔案頭,通常每次移動24行

VIM命令模式與輸入模式切換

vi編輯器 vi從命令模式切換到文字輸入模式。每個鍵以不同方式使vi進入文字輸入模式。按 esc 鍵使vi從文字輸入模式回到命令模式。表1列出了vi從命令模式切換到文字輸入模式的命令鍵及其功能。表1 切換到文字輸入模式的命令鍵 鍵 功能i 在游標左側輸入正文 i在游標所在行的行首輸入正文 a在游標右...

vim輸入模式

i insert 在游標所在位置插入字元,字元放在原位置字元的前面。i 大寫i 在游標所在行的行首插入字元。a 在游標所在行的行尾追加字元。o open 在游標所在行的下面新開一空行。o 在游標所在行的上面新開一空行。r replace 將游標位置字元替換為輸入的字元。r 從游標所在位置開始,依次替...

vim工作模式切換 1

將 etc passwd檔案拷貝到 opt下,對 opt passwd檔案操作。命令操作如下所示 root localhost cp etc passwd opt root localhost ls opt passwd root localhost vim opt passwd root x 0 ...