2013-05-21 73 views
0

的文件替换参数的值,我有这对我的配置文件:从bash脚本

TheParameter="TheValue" 

我试图取代从bash脚本像TheValue,没有运气。

sed 's/TheParameter="(.*)"/TheParameter="NewValue"/' /etc/my.conf 

任何人都可以提出正确的方法吗?

+0

下降括号 – Kevin

回答

2

看看这个例子:

kent$ echo 'TheParameter="TheValue"'|sed 's/\(TheParameter="\).*/\1newValue"/' 
TheParameter="newValue" 
1

sed默认情况下使用基本RE,其中()不是特殊的(不捕获或分组)。您可能需要转义它们(\(.*\)),使用-E标志(扩展的RE),或完全删除它们。