比較簡單的替換配置檔案的shell指令碼
阿新 • • 發佈:2018-11-14
作為測試,日常更新部署測試版本,修改配置檔案是每天必不可少的一個工作。特別是如果需要更改的配置檔案存在於多個檔案裡,更是繁瑣不堪。
找了一下Linux shell腳本里有個sed 命令可以實現這個需求
$OldStr是要被替換的字串
$NewStr是替換的新字串
SfileName是修改的檔案
sed -i "s/$OldStr/$NewStr/g" $fileName
Note:s/和/g是固定格式
例子:
sed -i "s/10.203.105.42:5672/10.203.105.59:5672/g" config/configuration.properties
這個例子是說把config下的configuration.properties檔案中所有10.203.105.42:5672替換成10.203.105.59:5672.
Note:如果檔案裡有多行相同的欄位,但是隻有某些行需要替換,其他不需要替換。就可以更精確一點,再加個行號
如:
sed -i "4s/10.203.105.42:5672/10.203.105.59:5672/g" config/configuration.properties
這個就是把config下的configuration.properties檔案中第4行的10.203.105.42:5672替換成10.203.105.59:5672。其餘行如果還有10.203.105.42:5672,則不替換。