シェルスクリプトはHTMLファイルから特定のタグを削除します。

シェルスクリプトはHTMLファイルから特定のタグを削除します。

次のシナリオのシェルスクリプトコマンドの作成を案内できる人はいますか?

以下に示すように、すべてのタグが1行に含まれるhtmlファイルがあります。

<html><head></head><body><br><center><h2 style='display: block;font-size: 1.5em;weight: bold;'>Validation Report</h2></center></body><table style='border:1px solid;border-collapse: separate;border-spacing: 2px;border-color: gray;' align='center'width='85%' cellpadding ='4' cellspacing='1' bgcolor='#CFCFCF' ><tr style='background-color:#a6caf0;height:30px;font-size:12px;'><th style='width:467px;border: 1px solid;'>TestCaseID</th><th style='border: 1px solid;'>Severity</th><th style='width:125px;border: 1px solid;'>Result</th><th style='width:148px;border: 1px solid;'>Remark</th><tr style='background-color:#ebf3fc;' align='center'><td style='width:360px;border: 1px solid;'>TESTCASE-001</td><td style='width:360px;border: 1px solid;'>Critical</td><td style='width:125px;border: 1px solid;'>Error</td><td style='width:125px;border: 1px solid;'>None</td></tr><tr style='background-color:#ebf3fc;' align='center'><td style='width:360px;border: 1px solid;'>TESTCASE-002</td><td style='width:360px;border: 1px solid;'>Critical</td><td style='width:125px;border: 1px solid;'>Error</td><td style='width:125px;border: 1px solid;'>None</td></tr></table></body></html>

ブラウザでファイルを表示すると、テストケースID、対応する重大度、結果、および説明のエントリを含むテーブルが表示されます。このHTMLファイルには合計210のTestcaseIDがあります。これで、TestcaseIDを参照してテーブルの特定の行を削除する必要があります。 (例えば、TESTCASE-002のある行を削除する必要があります)

ベストアンサー1

sed / grepなどのテキスト処理ツールを使用する代わりに、HTMLを理解するツールを使用してください。

例えば、xsh、あなたはできます

open :F html file.html ;
delete //tr[td='TESTCASE-002'] ;
save :b ;

ただし、まずファイルを回復する必要があります。場所が間違っているタグ</body></head>閉じたタグを削除してください。

おすすめ記事