Ubuntu下VI編輯器命令總結
阿新 • • 發佈:2019-01-28
vi編輯器有三種模式
1)命令列模式(游標移動、複製、貼上、刪除)(command mode)
2)插入模式(編輯文字) (insert mode)
3)底行模式(查詢和替換) (last line mode)
注意:
1)當不知道處於何種模式時,按ESC鍵返回到命令列模式。
2)wq(write quit) 儲存退出
3)i(insert) 插入
(1)開啟檔案、新建檔案、儲存檔案
vi 檔名
如果檔案存在,輸入結束後,:wq儲存並退出檔案
如果檔案不存在,輸入結束後,:wq就可以新建並儲存檔案
在編輯完成時,返回命令列模式,
1)輸入:w則儲存檔案,如果已經儲存檔案,輸入:q則退出檔案
2)直接輸入:wq儲存並退出
3)如果不想儲存被修改的內容,則:q!強制退出。
(2)從命令列模式進入插入模式
i(在游標前開始插入文字)
a在游標後開始插入文字
o(在當前行之下新開一行,併到行首)
h(左)
j(下)
k(上)
l(右)
3.2 快速的定位到某一行:
檔案頭、檔案尾、指定某一行
ngg游標移至第n行的行首(n為數字),
如1gg就跳到第一行的行首,就是檔案頭
如2gg就跳到第二行的行首
G轉至檔案結尾
3.3 在某一行如何快速定位到某一列
0(數字零)游標移至當前行行首
$游標移至當前行行末
(5)底行模式下的操作
5.1 查詢和替換
/pattern 從游標開始處向檔案尾搜尋pattern,後按下n或N
注意:
n在同一個方向重複上一次搜尋命令
N在反方向重複上一次搜尋命令
n(N)來源於next
在/pattern之前先跳到第一行則進行全檔案搜尋。
:%s/p1/p2/g將檔案中所有的p1均用p2替換
:%s/p1/p2/gc替換時需要確認
助記:
s: substitute替換
g: global全域性
c: confirm確認
1)命令列模式(游標移動、複製、貼上、刪除)(command mode)
2)插入模式(編輯文字) (insert mode)
3)底行模式(查詢和替換) (last line mode)
注意:
1)當不知道處於何種模式時,按ESC鍵返回到命令列模式。
2)wq(write quit) 儲存退出
3)i(insert) 插入
(1)開啟檔案、新建檔案、儲存檔案
vi 檔名
如果檔案存在,輸入結束後,:wq儲存並退出檔案
如果檔案不存在,輸入結束後,:wq就可以新建並儲存檔案
在編輯完成時,返回命令列模式,
1)輸入:w則儲存檔案,如果已經儲存檔案,輸入:q則退出檔案
2)直接輸入:wq儲存並退出
3)如果不想儲存被修改的內容,則:q!強制退出。
(2)從命令列模式進入插入模式
i(在游標前開始插入文字)
a在游標後開始插入文字
o(在當前行之下新開一行,併到行首)
(3)命令列模式下的操作
3.1 游標移動
在命令列模式下,hjkl這四個按鍵就可以移動游標h(左)
j(下)
k(上)
l(右)
3.2 快速的定位到某一行:
檔案頭、檔案尾、指定某一行
ngg游標移至第n行的行首(n為數字),
如1gg就跳到第一行的行首,就是檔案頭
如2gg就跳到第二行的行首
G轉至檔案結尾
3.3 在某一行如何快速定位到某一列
0(數字零)游標移至當前行行首
$游標移至當前行行末
fx搜尋當前行中下一個出現字母x的地方
3.4 文字複製、貼上、刪除、撤銷
yy複製當前行(y:yank(複製))
nyy複製當前行及其後的n-1行(n是數字)
使用P鍵來貼上(p:paste)
dd 刪除游標所在行(d:delete)
ndd 刪除當前行及其後的n-1行(n是數字)
按u鍵來撤銷上一步操作
x刪除游標所在位置的字元
(4)vi的難點:
vi操作之前,先判斷一下當前是哪一種模式,再看游標所在位置。當你不知道處於何種模式時,使用esc鍵返回到命令列模式。再看游標,難點在於移動游標,可以做到快速切換到某一行某一列。(5)底行模式下的操作
5.1 查詢和替換
/pattern 從游標開始處向檔案尾搜尋pattern,後按下n或N
注意:
n在同一個方向重複上一次搜尋命令
N在反方向重複上一次搜尋命令
n(N)來源於next
在/pattern之前先跳到第一行則進行全檔案搜尋。
:%s/p1/p2/g將檔案中所有的p1均用p2替換
:%s/p1/p2/gc替換時需要確認
助記:
s: substitute替換
g: global全域性
c: confirm確認