我想替换包含具有某些特殊字符的字符串的行。我使用\和\来转义特殊字符,但文件中没有任何变化。我像这样使用sed:
> sed -i '/pnconfig\[\'dbhost\'\] = \'localhost\'/c\This line is removed.' tco.php
我只想找到包含以下内容的行:
$pnconfig['dbhost'] = 'localhost';
并将该行替换为:
$pnconfig['dbhost'] = '1.1.1.1';
将sed用双引号引起来
sed -i "s/\(pnconfig\['dbhost'\] = \)'localhost'/\1'1.1.1.1'/" filename
测试
$ echo "\$pnconfig['dbhost'] = 'localhost';" | sed "s/\(pnconfig\['dbhost'\] = \)'localhost'/\1'1.1.1.1'/"
$pnconfig['dbhost'] = '1.1.1.1';
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句