簡體   English   中英

在Shell中使用SED查找和替換HTML標簽

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM