回答網友請教的乙個問題:
配置檔案如下:
[aaa]
cfg1=aaa
***x=bbb
cfg2=ccc
cfg3=ddd
[bbb]
cfg1=eee
yyyy=fff
cfg2=ggg
cfg3=hhh
cfg4=iii
[ccc]
cfg1=jjj
zzzz=kkk
cfg2=lll
cfg2=mmm
cfg2=nnn
輸出結果:
[aaa]
cfg1=aaa
***x=111
cfg2=ccc
cfg3=ddd
[bbb]
cfg1=eee
yyyy=111
cfg2=ggg
cfg3=hhh
cfg4=iii
[ccc]
cfg1=jjj
zzzz=111
cfg2=lll
cfg2=mmm
cfg2=nnn
要求:將配置檔案的每個節點的第二個配置改為111,用sed怎麼寫?
根據以上需求,現給出以下具體解決方法:
test.log為測試檔案
[root@localhost test]# cat test.log
[aaa]
cfg1=aaa
***x=bbb
cfg2=ccc
cfg3=ddd
[bbb]
cfg1=eee
yyyy=fff
cfg2=ggg
cfg3=hhh
cfg4=iii
[ccc]
cfg1=jjj
zzzz=kkk
cfg2=lll
cfg2=mmm
cfg2=nnn
[root@localhost test]# sed -i \n 's/***x=bbb/***x=111/g;s/yyyy=fff/yyyy=111/g;s/zzzz=kkk/zzzz=111/g' test.log
[root@localhost test]# cat test.log
[aaa]
cfg1=aaa
***x=111
cfg2=ccc
cfg3=ddd
[bbb]
cfg1=eee
yyyy=111
cfg2=ggg
cfg3=hhh
cfg4=iii
[ccc]
cfg1=jjj
zzzz=111
cfg2=lll
cfg2=mmm
cfg2=nnn
使用hash法高效替換多個字元
在專案中經常要遇到要對字串中的特殊的字元進行替換,例如字串中如果多了個回車鍵 換行符或是製表符,那麼將該string寫成行表形式的資料時,該行資料將不能滿足需求。而如果替換過程中,不注意演算法的設計,替換的時間複雜度將很高。本文介紹使用hash的方式,以空間的浪費的代價來換取替換時間的降低,使得時間...
python替換多個字串的方法
參考 import re a 123 n b re.sub r s a print b 最後輸出結果為 123 解釋一下這個正規表示式的意思 r s 1 r指明這是乙個正規表示式 2 內是乙個字符集,字符集內的字元任何乙個被匹配,都算匹配成功,比如r a bcd e 可以匹配到 abe ace ad...
python 字串一次替換多個字元
最近在用python給自己的seo工作提高效率和節省時間,發現python真的很不錯,可以完成很多事情。下面是我最近在用python為 自動更新文章做了乙個替換錨文字的工作,也是python 字串一次替換多個字元的很好的應用。我用了幾個候選的鏈結,讓random隨機讓程式自己去選擇,這個如果懂得se...