vi 使用記錄

2021-07-14 10:44:28 字數 1017 閱讀 9863

vim 中用 / 和 ? 來查詢字串,兩者的區別是:

/string 會高亮顯示游標後匹配的第乙個字串,回車後游標移到該字串的第乙個字母;

?string 會高亮顯示游標前匹配的第乙個字串,回車後游標移到該字串的第乙個字母。

在回車之後,按n鍵同方向轉到下乙個匹配的字串,按n鍵反方向轉到上乙個匹配的字串。

用命令 :set ic 和 :set noic 來分別設定查詢時不區分和區分大小寫。如果查詢特殊字元,如 ^、$、*、/ 和 .,需要在前面加 \ 來轉義。

vim 中可用 :s 命令來替換字串,具體如下:

:s/str1/str2/ 替換當前行第乙個 str1 為 str2

:s/str1/str2/g 替換當前行中所有 str1 為 str2

:m,ns/str1/str2/ 替換第 n 行開始到最後一行中每一行的第乙個 str1 為 str2

:m,ns/str1/str2/g 替換第 n 行開始到最後一行中所有的 str1 為 str2

(注:m和n 為數字,若m為 .,表示為當前行開始;若n為$,則表示到最後一行結束)

如果使用 # 作為分隔符,則中間出現的 / 不會作為分隔符,比如:

:s#str1/#str2/# 替換當前行第乙個 str1/ 為 str2/

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

其他 :%s/str1/str2/(等同於 :g/str1/s//str2/) 替換每一行的第乙個 str1 為 str2

:%s/str1/str2/g(等同於 :g/str1/s//str2/g 和 :1,$ s/str1/str2/g ) 替換文中所有 str1 為 str2

從替換命令可以看到,g 放在命令末尾,表示對搜尋字串的每次出現進行替換;不加 g,表示只對搜尋

字串的首次出現進行替換;g 放在命令開頭,表示對正文中所有包含搜尋字串的行進行替換操作。

vi縮排簡單記錄

實用vim也兩年了。說來實在慚愧,一直沒找到好的縮排的方法。都是手動的。今天無意間看到一篇關於vim縮排的文章,怕丟了。在此備份一下。全文的自動縮排命令 開啟檔案,在一般模式下輸入 gg g 全文的縮排完成。原理 我們都知道,gg是代表到最頂端。g是到最後。而等號則是呼叫命令列的indent程式來使...

vi實戰記錄

vi編輯器在unix和linux中比較早期的,vim是vi的擴充套件集,是對vi的加強。伺服器最小化,預設整合vi編輯器!了解vi常用命令,工作起來頗有 洪荒之力!01.關於退出 wq 強制儲存退出 wq 儲存退出 x 作用和 wq 一樣 zz 作用和 wq一樣,注意z是大寫的,並且不是在命令模式 ...

linux中VI編輯器使用個人記錄

vi編輯器有三種編輯模式 命令模式 最後行模式 文字編輯模式 啟動vi後進入的第一種模式是 命令模式 從命令模式可進入最後行模式和編輯模式 而後兩種模式之間不能直接切換 必須按esc鍵退回到命令模式後在進入響應模式 那麼 個人感覺命令模式就相當於最後行模式和編輯模式的中間模式或者說是過度模式 它只起...