在管理大量設定檔,或是修改程式碼,常常會遇到要修改某些文字、程式,而數量又很大的時候就會用到 『搜尋並取代』的功能
在 Linux 有很方便的 find(搜尋)、sed(取代) 的功能,但每每要執行都要在查一遍,所以紀錄在此篇方便以後使用。
指定 include.conf 文件將 AAA 取代為 BBB
$ sed -i 's/AAA/BBB/g' include.conf
搜尋 / 底下所有 AAA 取代為 BBB
find . -type f -exec sed -i 's/AAA/BBB/g' {}\;
註1. ‘s/AAA/BBB/g’
即為在用 vi 中使用 :%s/AAA/BBB/g 去取代文件內容。
註2. find 使用 -exec 後就必須加入 \;