編集する必要がある 300 以上のファイルのリストがあるので、sed コマンドと find および exec を併用すると役立つと考えました。
何か間違ったことをする前に (変更しないファイルを上書きするなど)、ローカル置換ではなく sed を使用してその結果を bash に出力することにしました。
私が探している文字列は次のとおりです。<tr><td class="button" style=" background:#040404; color:#eee9dc; font-size: 23px; padding:5px 0; text-align:center;"><a href="../Z2/C24357-0/hhcm-LASTMINUTES.html" style=" text-decoration:none; cursor:pointer; color:#eee9dc">Offerte & LastMinute</a></td></tr>
その部分だけ<a href="../Z2/C24357-0/hhcm-LASTMINUTES.html
を<a href="../../../special_offers.php?lang=it"
私は について初心者なので、適切な方法で正規表現の議論に私を駆り立てるそのWeb ページregex
を見てみましょう。
今、私はそのようなことを試しました(単一のファイルで、「安全な」方法で出力を確認するためだけに)
sed s/\<a.*LAST.*html\"
/\<a href="\.\.\/\.\.\/\.\.\/special_offers\.php\?lang=en"/
C25030-9_3/hhcm-Solo_per_due.html
そして、そのエラーが発生します。式が正しくないsed: -e expression #1, char 20: unterminated s' command
ようsed
ですが、エラーがパーツにあるのか、他の場所にあるのかわかりませreplacement
ん。
お時間と労力をいただきありがとうございます。
S.
編集
回答のおかげで、これを何かして解決しました
sed 's/<a.*LAST.*html\"/\<a href="..\/..\/..\/special_offers.php?lang=en"/' C25030-9_3/hhcm-Solo_per_due.html