sed批量替換多個文件的字符串

1、使用場景:

在進行編碼或是代碼移植時經常遇到,要批量替換特定字符串,於是找到了如下方法。這一方法在替換ip地址時也常常用到。

2、命令使用:
        
sed -i 's/old_string/new_string/g'  `grep old_string -rl ./`                           //一般的替換用這條足以實現
sed -i 's/old_string/new_string/g'  `grep old_string -rl ./ | grep -vE "tags|svn"`     //特殊要求的替換:此命令中要求過濾掉含有tags和svn的文件

3、說明:  將當前目錄下,文本中含有的old_string的串替換爲new_string.

1) grep old_string -rl ./ 檢索出當前目下及子目錄下的目標文件(含有old_string字符串的文件)

2)grep -vE "tags|svn" 過濾掉不合格的文件(含有tags或者svn字符的文件)。因爲代碼庫裏面經常包含有索引文件,這些索引文件受控於svn,不應認爲改動。所以最好過濾掉

3) sed  -i          -i 表示 inplace edit, 就地修改文件,請注意批量替換前請先備份。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章