我一直在使用SED(Bash shell)转义转义单引号的问题。sed单引号
我需要
$cfg['Servers'][$i]['password'] = '';
到
$cfg['Servers'][$i]['password'] = 'mypassword';
我已经试过是:
sed -i "s/$cfg['Servers'][$i]['password'] = '';/$cfg['Servers'][$i]['password'] = '$rootpassword';/g" /usr/share/phpmyadmin/libraries/config.default.bak
这最终真正混杂行。
$cfg['Servers'][$i]['password['Servers'][]['passsword'] = 'mypassword'
我试过'\''来逃避单引号,我认为一切都在阳光下,但不能在那里得到它。
任何人都可以指出我可能的明显错误吗?
谢谢。
这是唯一带有````的行吗?如果是这样,就匹配。另外,为extended-regex添加`-r`标志。这将解决很多问题。 – 2011-12-14 19:50:55
请注意其他文字 - '$`,`[`,`]` – 2011-12-14 19:53:58