linux vi指令學習

2021-09-13 11:03:56 字數 3619 閱讀 7901

內容命令/作用

開啟檔案

vi檔名

vi  檔名  +行號

退出/儲存檔案

:w  儲存檔案

:wq  儲存檔案並退出vi

:q!強制退出vi,即使該檔案被修改,也不儲存該檔案

進入編輯模式

i在游標前開始插入文字

a在游標後開始插入文字

o在當前行之下新開一行,並到行首

o在當前行之上新開一行

游標移動多行

間切換ctrl +f向前滾動一整屏

ctrl +b向後滾動一整屏

gg轉至檔案開頭

g轉至檔案結尾

ngg/ng游標移至第n行的行首

(n為數字)

:n游標移至第n行的行首

(n為數字)

n+游標向下移動n行(n為數字)

n-游標向上移動n行(n為數字)

j/nj游標向下移動1行/n行(n為數字)

k/nk游標向上移動1行/n行(n為數字)單行

列切換0(數字零)游標移至當前行行首

$游標移至當前行行末

h/nh游標向左移動1列/n列

(n為數字)

k/nk游標向右移動1列/n列

(n為數字)

w游標移動到下乙個字的開頭

b游標移動到上乙個字的開頭

fx搜尋當前行中下乙個出現字母x的地方

fx搜尋當前行中上乙個出現字母x的地方

文字複製命令

yy複製當前行

nyy複製當前行及其後的n-1行

文字刪除命令

x刪除游標所在位置字元

x刪除游標前的乙個字元

nx刪除游標所在位置以及之後的n-1個字元

nx刪除游標前的n個字元

dw從游標處刪至當前詞尾

db從游標處刪至當前詞首

d0從游標處刪至行首

d$/d  從游標處刪至行尾

dd  刪除游標所在行

ndd 刪除當前行及其後的n-1行

文字貼上命令

使用p鍵,

如複製當前行,先用yy複製當前行,切換到目的行的上一行後,用p來貼上所複製的行。

如剪下當前行,先用dd複製當前行,切換到目的行的上一行後,用p來貼上所剪下的行。

撤銷命令

按u鍵來撤銷上一步操作

查詢及替換命令

/pattern 從游標開始處向

檔案尾搜尋pattern(在/pattern之前先跳到第一行則進行全檔案搜尋),後按下n或n

注:n在同乙個方向重複上一次搜尋命令

n在反方向重複上一次搜尋命令

?pattern 從游標開始處向檔案首部搜尋pattern ,後按下n或n

:s/p1/p2/g將當前行中所有的p1均用p2替換,:s/p1/p2/gc替換時需要確認

:n1,n2s/p1/p2/g將n1至n2行中所有的p1均用p2替換,:n1,n2s/p1/p2/gc替換時需要確認

:%s/p1/p2/g將檔案中所有的p1均用p2替換,:%s/p1/p2/gc替換時需要確認

乙個編輯器具備的功能

1)開啟檔案、新建檔案、儲存檔案

2)游標移動

3)文字編輯

4)(多行間|多列間)複製、貼上、刪除

5)查詢和替換

"關閉相容功能

set nocompatible 

"顯示行號 

set number

"編輯時 backspace 鍵設定為2個空格

set backspace=2

"編輯時 tab 鍵設定為4個空格

set tabstop=4

"設定自動對齊為4個空格

set shiftwidth=4

"搜尋時不區分大小寫

set ignorecase

"搜尋時高亮顯示

set hlsearch

vi編輯器有三種模式

1)一般模式(游標移動、複製、貼上、刪除)

2)編輯模式(編輯文字)

3)命令列模式(查詢和替換)

注意: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.游標移動

在一般模式下,hjkl這四個按鍵就可以移動游標

h(左)

j(下)

k(上)

l(右)

快速的定位到某一行:

檔案頭、檔案尾、指定某一行

ngg游標移至第n行的行首(n為數字),

如1gg就跳到第一行的行首,就是檔案頭

如2gg就跳到第二行的行首

g轉至檔案結尾

注意:ngg和g是在一般模式

vi的難點:

1)vi操作之前,先判斷一下當前是哪一種模式,再看游標所在位置。

當你不知道處於何種模式時,使用esc鍵返回到一般模式。

再看游標,難點在於移動游標,可以做到快速切換到某一行某一列。

4.文字複製、貼上、刪除、撤銷

yy複製當前行(y:yank(複製))   

nyy複製當前行及其後的n-1行(n是數字)

使用p鍵來貼上(p:paste)

dd  刪除游標所在行(d:delete)

ndd 刪除當前行及其後的n-1行(n是數字)

按u鍵來撤銷上一步操作

x刪除游標所在位置的字元

注意:yy/nyy/dd/ndd/x/u都是在一般模式。

5.查詢和替換

/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確認

vi的難點:

1)vi操作之前,先判斷一下當前是哪一種模式,再看游標所在位置。

當你不知道處於何種模式時,使用esc鍵返回到一般模式。

再看游標,難點在於移動游標,可以做到快速切換到某一行某一列。

vi編輯器有三種模式

1)一般模式(游標移動、複製、貼上、刪除、撤銷)

hjkl、ngg/g、0、$、fx

yy/nyy

pdd/ndd、x

u2)編輯模式(編輯文字)

i  a o

3)命令列模式(查詢和替換、儲存退出檔案)

/pattern、:%s/p1/p2/gc、:wq

linux vi常用指令

vi可以分為三種狀態,分別是命令模式 command mode 插入模式 insert mode 和底行模式 last line mode 從命令列切換到編輯模式 i a o i 為從目前游標所在處輸入,i 為在目前所在行的第乙個非空格符處開始輸入 a 為從目前游標所在的下乙個字元處開始輸入,a 為...

Linux vi 常用指令總結

進入vi 的 命令列模式 此模式無法編輯,只能檢視 需要按下鍵盤的 i 鍵,進入 編輯模式 才能進行檔案的內容編輯 處於 插入模式 insert mode 就只能一直輸入文字 在 命令列模式 command mode 下,按一下 冒號鍵進入 last line mode 例如 w filename ...

linux vi 命令 學習知識 001

最後行模式 也就是按esc 輸入 之後 set nu 顯示行號 3 跳轉到第3行 1,s xx yy g 把整個檔案的xx替換成yy 1 開始行 最後一行 s 替換 如果想替換第4行到第15行 可以這樣寫 4,15s xx yy g xx 被替換的內容 yy 替換xx的內容 g 全域性 通行替換 一...