2014-01-15 133 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