[Linux] 在 vi/vim 中搜尋與取代字串

[Linux] 在 vi/vim 中搜尋與取代字串

搜尋算是我在 vi/vim 上還算蠻常用的功能,

使用也很簡單,只要在命令模式下 (command mode),

打入 / 和要搜尋的字串就可以,像是 /keyword。

 

不過取代我就很少在 vi/vim 上操作了,

一方面我習慣在 Sublime Text 上處理檔案,更容易操作,

另一方面我通常使用 vi/vim 都是檔案的小修改、或是檢視檔案內容用,

不太有機會需要大規模的搜尋並取代文字~

 

今天算是踢到鐵板,有個問題出現在外部的 server,

我只能連進去使用 vi 修改一個檔案,不方便傳出來。

只好臨時惡補了 vi/vim 的取代功能,幸好也不難記~

 

1. 取代第一個符合的字串

在命令模式下,打 :s/search/replace/,就可以將 search 取代成 replace。

假設我想將第一個 File 取代成 Data 的話,就可以這麼下:

:s/File/Data/

 

2. 取代所有符合的字串

假設我想將檔案中所有的 File 都取代成 Data 的話,該怎麼做呢?

只要將 :s 換成 :%s 就行了,例如:

:%s/File/Data/

 

參考資料:Searching and Replacing

(本頁面已被瀏覽過 19 次)

發表迴響

你的電子郵件位址並不會被公開。