我正在使用Bash编写一个脚本,将旧链接URL替换为新链接URL。我的问题是,由于斜杠的存在,sed无法替换URL。如果我只放一些文本,它就可以工作。
我的代码:
我的代码:
sed -e s/"$old_link"/"$new_link"/g wget2.html > playlist.txt
sed
支持 任何 字符作为分隔符,因此如果你想要替换的模式包含 /
,请使用不同的分隔符。最常用的分隔符是 #
和 |
sed 's|foo|bar|g' input
sed 's#foo#bar#g' input
如果您在sed
替换中使用变量
,请不要忘记加上双引号
。此外,如果您的变量包含/
,请使用不同的分隔符来进行sed
替换。您可以使用_
、%
、|
、#
等多种分隔符。
因此,可能会像这样工作 -
sed -e "s_"$old_link"_"$new_link"_g" wget2.html > playlist.txt