Linux下的vi編輯命令中查詢 替換詳解

2021-09-07 19:08:36 字數 2550 閱讀 2187

一、查詢

查詢命令 

/pattern:向下查詢pattern匹配字串 

?pattern:向上查詢pattern匹配字串 

使用了查詢命令之後,使用如下兩個鍵快速查詢: 

n:按照同一方向繼續查詢 

n:按照反方向查詢 

字串匹配 

pattern是需要匹配的字串,例如:

1

1:/abc#查詢abc

除此之外,pattern還可以使用一些特殊字元,包括(/、^、$、*、.),其中前三個這兩個是vi與vim通用的,「/」為轉義字元。

1

2

3

1:  /^abc#查詢以abc開始的行

2:/abc$#查詢以abc結束的行

3://^abc#查詢^abc字串

二、替換

基本替換 

12

3

4

5

6

1:  :s/vivian/sky/#替換當前行第乙個 vivian 為 sky

2:  :s/vivian/sky/g#替換當前行所有 vivian 為 sky

3:  :n,$s/vivian/sky/#替換第 n 行開始到最後一行中每一行的第乙個 vivian 為 sky

4:  :n,$s/vivian/sky/g#替換第 n 行開始到最後一行中每一行所有 vivian 為 sky

(n 為數字,若 n 為 .,表示從當前行開始到最後一行)

5:  :%s/vivian/sky/#(等同於:1,$s/vivian/sky/   :g/vivian/s//sky/) 替換每一行的第乙個 vivian 為 sky

1

6</em>: :%s/vivian/sky/g#(等同於:1,$s/vivian/sky/g     :g/vivian/s//sky/g)替換每一行的所有 vivian 為 sky

可以使用 #或+ 作為分隔符,此時中間出現的 / 不會作為分隔符 

12

1:  :s#vivian/#sky/#         替換當前行第乙個 vivian/ 為 sky/

2:  :%s+/oradata/apras/+/user01/apras1+ (使用+ 來 替換 / ):/oradata/apras/替換成/user01/apras1/

例如:1

2

3

4

5

1:  :s/str1/str2/#用字串 str2 替換行中首次出現的字串 str1

2:  :s/str1/str2/g#用字串 str2 替換行中所有出現的字串 str1

3:  :.,$ s/str1/str2/g#用字串 str2 替換正文當前行到末尾所有出現的字串 str1

4:  :1,$ s/str1/str2/g#用字串 str2 替換正文中所有出現的字串 str1

5:  :g/str1/s//str2/g#功能同上

linux下vi編輯器命令大全

文字編輯器是所有計算機系統中最常用的一種工具。unix下的編輯器有ex,sed和vi等,其中,使用最為廣泛的是vi,而vi命令繁多,論壇裡好像這方面的總結不多,以下稍做總結,以資共享!渴望更正和補充!進入vi的命令 vi filename 開啟或新建檔案,並將游標置於第一行首 vi n filena...

linux下vi編輯器命令大全

常用命令linux下vi編輯器命令大全 文字編輯器是所有計算機系統中最常用的一種工具。unix下的編輯器有ex,sed和vi等,其中,使用最為廣泛的是vi,而vi命令繁多,論壇裡好像這方面的總結不多,以下稍做總結,以資共享!渴望更正和補充!進入vi的命令 vi filename 開啟或新建檔案,並將...

linux下vi編輯器命令大全

標籤命令 tabe fn 在乙個新的標籤頁中編輯檔案fn gt 切換到下乙個標籤頁 gt 切換到上乙個標籤頁 tabr 切換到第乙個標籤頁 tabl 切換到最後乙個標籤頁 tabm n 把當前tab移動到第n個tab之後 對,正如你所想象的那樣,跟eclipse,ue等的標籤頁是乙個意思!視窗命令 ...