標籤:vim vi 編輯器 linux bash
vi-vim編輯器:全屏編輯器,模式化編輯器
vim模式:
編輯模式(命令模式)
輸入模式
末行模式(底行模式)
模式轉換:
編輯模式-->輸入模式:
i:在當前游標所在字元的前面輸入
I:在當前游標所在行的行首輸入
a:在當前游標所在字元的後面輸入
A:在當前游標所在行的最後名進行插入
o:在當前游標所在行的下一行輸入
O:在當前游標所在行的上一行輸入
輸入模式-->編輯模式:
Esc
編輯模式-->末行模式:
:
末行模式-->編輯模式
Esc[Esc]
開啟檔案
vim /path/to/file
vim +N /path/to/file:開啟檔案的同時游標移動到第N行行首
vim + /path/to/file:開啟檔案的同時游標移動到檔案結尾行的行首
vim +/pattern /path/to/file:開啟檔案的同時游標移動到第1次匹配模式的行首
關閉檔案
1. 末行模式關閉檔案
:q 退出
:q! 不儲存強制退出
:w 儲存
:w! 強行儲存(對唯讀檔案只有管理員有此許可權)
:wq 儲存並退出
:x 儲存並退出
2. 編輯模式下關閉檔案
ZZ 儲存退出
移動游標
1. 逐字元移動游標
h:將游標向左移動一個字元
l:將游標向右移動一個字元
j:將游標向下移動一行
k:將游標向上移動一行
#h上面的命令前面都可以加上數字,則會移動輸入的數字個字元。
2. 以單詞為單位移動
w:移至下一個單詞的詞首
e:移至當前單詞或下一個單詞的詞尾,如果游標不在當前單詞詞尾則會先跳到當前單詞詞尾
b:移至當前單詞或前一個單詞的詞首
#w:移動數字個單位
3. 行內跳轉
0:絕對行首
^:行首的第一個非空白字元
$:絕對行尾
4. 行間跳轉
#G:跳轉到第#行
G:跳轉到最後一行
翻屏操作
1. Ctrl + f:向前翻一屏
2. Ctrl + b:向後翻一屏
3. Ctrl + d:向前翻半屏
4. Ctrl + u:向後翻半屏
編輯命令:
1. 刪除單個字元
x:刪除游標所在處的單個字元
#x:刪除游標所在處向後的#個字元
2. 刪除多個字元
d命令跟跳轉命令組合可以選擇刪除多少
de、db、dw
dd:刪除一行
#dd:刪除#行
末行模式下可以使用:
startADD,EndAddd
.:表示當前行
$: 最行一行
+#: 向下的#行
粘貼命令:
p:如果刪除或複製為整行內容,則粘貼至游標所在行的下方,如果複製或刪除的內容為非整行,則粘貼是游標所在字元的後面
P:如果刪除或複製為整行內容,則粘貼至游標所在行的上方,如果複製或刪除的內容為非整行,則粘貼是游標所在字元的前面
複製命令:
y:用法同d命令
先刪除內容,再轉換為輸入模式--修改
c:用法同d命令
替換:
r:
撤銷編輯操作:
u:撤銷前一次的操作
可連續撤銷多次
#u:直接撤銷最近#次操作
撤銷最近一次操作:
Ctrl + r
重複前一次編輯操作:
.
可視化模式
v:按字元選取
V:按矩形選取
尋找
/pattern:向前找
?pattern:向後找
尋找並替換
在末行模式中使用s命令
s/pattern/string/g
vi-vim基本操作