繁体   English   中英

如何修复此SED命令以查找和替换字符串

[英]How Do I Fix This SED Command to Find & Replace a String

美好的一天,

我正在为Debian Jessie编写一个Bash脚本并且在这一行中;

<param name="script-directory" value="$${base_dir}/scripts/?.lua"/>

我正在尝试找到base_dir} / scripts并将其替换为script_dir},以便我的新行读作:

<param name="script-directory" value="$${script_dir}/?.lua"/>

这是我到目前为止所尝试过的;

sed -rn '/s/base_dir}\/scripts/script_dir}/p' /etc/freeswitch/autoload_configs/lua.conf.xml

这导致了这个错误;

sed: -e expression #1, char 12: unexpected `}'

我很困惑如何解决这个问题,并希望得到一些帮助,谢谢。

您可以将此sed与备用分隔符一起使用以避免转义/

sed 's~base_dir}/scripts~script_dir}~' /etc/freeswitch/autoload_configs/lua.conf.xml

你不需要-r here(需要扩展正则表达式)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM