1. 程式人生 > 實用技巧 >【 OS_Linux】vi/vim命令

【 OS_Linux】vi/vim命令

vi/vim 共分為三種模式,分別是:

  • 命令模式(Command mode)
  • 輸入模式(Insert mode)
  • 底線模式(Last line mode)

vi進入檔案後預設是命令模式,命令模式下輸入“i”進入輸入模式,命令模式下輸入“:”進入底線模式,輸入模式和底線模式下按“ESC”回到命令模式。

1、命令模式下的常用命令:

1、游標移動

hjkl,方向鍵移動一位,hjkl代表左、下、上、右

數字0 移至本行開頭

^ 移至本行第一個非空字元,匹配開頭

$ 移至本行結尾,可以包含空格

1G 移至第1行

G 移至游標最後一行

n+ 向下跳n行

n- 向上跳n行

注意:許多vi的命令前面都可以綴上數字,字首數字可以控制該命令執行的次數,比如5j可以使得游標向下移動5行。

2、剪下、複製和貼上

y0 當前字元到當前行的行首

y^ 當前字元到當前行首個非空字元

y$ 當前字元到當前行的末尾

yw 當前字元到下一單詞的起始處

yy 複製當前行

5yy 向下複製當前行在內的5行

yG 當前行到檔案末尾

y20G 當前行到檔案第20行(用法和d完全一樣,d實際就是剪下)

p 貼上到當前行後面(下方)

P 貼上到當前行前面(上方)

o 當前行下方插入新行並進入插入模式

O 當前行上方插入新行並進入插入模式

3、刪除和撤銷

x 刪除當前字元(剪下)

nx 向後刪除當前行在內的n個字元(剪下)

dd 刪除(剪下)當前行

ndd 向下刪除當前行在內的n行(剪下)

dW 刪除當前字元到下一單詞的起始處(刪除整個單詞)

d$ 刪除當前字元到當前行的末尾(剪下)

d0 刪除當前字元到當前行的起始處(剪下)

d^ 刪除當前字元噹噹前行下一個非空字元(剪下)

dG 刪除當前行到檔案末尾(剪下)

d20G 刪除當前行到檔案第20行(d與定位符結合使用,x不行)(剪下)

u 撤銷上一次操作

Ctrl + r    重做上一個動作

.         重複前一個動作

注意:x和d鍵實質上是剪下鍵,兩者功能略有差異。y是複製鍵,p是貼上鍵。

2、底線模式下儲存

w 儲存檔案但不退出vi命令

q 不儲存直接退出檔案

q! 放棄修改並強制退出

wq 儲存並退出檔案

w file1 檔案另存為file1

參考博文:vim 常用指令 vim使用總結