需求
通過shell對yaml配置文件進行修改,要求具有通用性,不依賴其他工具。
配置文件內容如下
system_config:
maximum_retry: 8
enable_log: true
變量范圍:
maximum_retry取值0-9
enable_log取值true/false
實現
使用sed工具對yaml文件進行正則表達式替換
# set maximum_retry = 4
sed -i 's/maximum_retry: [0-9]*/maximum_retry: 4/g' config.yaml
# set enable_log = false
sed -i 's/enable_log : \(true\|false\)/enable_log : false/g' config.yaml
注意:sed正則表達式中()|需要加\進行轉義
