[英]Find and Replace HTML tag using SED in Shell
我要实现的是,使用Shell脚本将html标记替换为文件中的修改标记。 当我用Shell搜索并替换时,我才知道SED。 我出于目的进行了尝试,但是会引发错误。 我的代码是
pattern='<html style=background-color:#ffffff;>'
replacement='<html style=background-color:#ffffff; manifest="app.appcache">'
cat "index.html" | sed "/s/$pattern/$replacement/" > "index2.html"
我收到以下错误,
sed: 1: "/s/<html style=backgrou ...": invalid command code <
从其他一些stackoverflow问题中,我尝试不使用
pattern='<html style=background-color:#ffffff;>'
replacement='<html style=background-color:#ffffff; manifest="app.appcache">'
sed "/s/$pattern/$replacement/" <"index.html" >"index2.html"
我遇到了同样的错误。
请帮我怎么做。
尝试
# v-- no leading slash
sed "s/$pattern/$replacement/" index.html > index2.html
应该这样完成:
pattern="<html style=background-color:#ffffff;>"
replacement="<html style=background-color:#ffffff; manifest=\"app.appcache\">"
sed "s/$pattern/$replacement/g" index.html > index2.html
感谢您的回答,它正在与我从博客中获得的“ @”一起使用
sed -e 's@<html style=background-color:#ffffff;>@<html style=background-color:#ffffff; manifest="app.appcache">@g' <"index.html" >"index2.html"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.