2014-01-15 92 views
4

我想通過使用sed的sed將替換部分串

殼體1做如下:

*here is some random text constant=randomValue some more random text* 

我想直接後常數來代替隨機值=同時保持的其餘部分線完好所以結果看起來像:

*here is some random text constant=substituteValue some more random text* 

案例2:

*here is some random text constant= randomValue some more random text* 

類似於第一個,但隨着不斷=字符串後面輸入一個空格,所以輸出將

*here is some random text constant= substituteValue some more random text* 

對於情況下,一個我一直在試圖使用方法:

echo $line | sed 's/server=.*\ /sever=\<SrvrName\>/' 

回答

3

您可以使用此sed:

sed 's/\(constant = *\)[^ ]*/\1substituteValue/' <<< "$line" 
+1

非常感謝,阿努布HAVA!完美解決方案我會盡快接受答案:) – user2967606

+0

不客氣,很高興它解決了。 – anubhava