find ./ -type f -exec sed -i -e ’s/var\/www\/html/var\/www\/this_new_html/g’ {} \;
我尝试运行以上内容来替换所有具有以下内容的文件
include_once '/var/www/html/inc/functions.php';
到
include_once '/var/www/this_new_html/inc/functions.php';
我有很多包含行,所以使用批量替换sed替换会很好但是当我运行代码时
find ./ -type f -exec sed -i -e ’s/var\/www\/html/var\/www\/this_new_html/g’ {} \;
错误打印输出
sed: -e expression #1, char 32: unknown option to `s'
如何更改以使其更换
答案 0 :(得分:3)
请勿使用’
,请使用单引号'
。另外,我建议在使用路径时使用不同的分隔符。使用#
可以显着提高可读性:
find . -type f -exec sed -i 's#var/www/html#var/www/this_new_html#g' {} +