htmlタグをSEDコマンドに置き換える方法は?

htmlタグをSEDコマンドに置き換える方法は?

以下のタグを新しいコンテンツとタグの行に置き換えようとしています。 sedまたは他のオプションを使用してラベルとその値を変更する方法はありますか?

元のHTMLタグ(内部th>タグ):

th> file-109 /th>
th> file-209 /th>

このHTMLタグを次に変更します。

th>S.No  Name /th>
th>S.No  Name /th>

以下の方法を試してみましたが、うまくいきません。投げエラーです。

sed "s/th>file-1.*/'th>`head -5 file-109 | tail -1`/th>'/g" Diff.html
sed "s/th>file-2.*/'th>`head -5 file-209 | tail -1`/th>'/g" Diff.html

ベストアンサー1

sedは/を選択した区切り文字としてさまざまな文字を使用できますが、/は置き換えたい文字列にも表示されます。したがって、私は次を選択します。

sed 's:th>file-[0-9]+ /th>:th>S.No name /th>:g' yourfile

ただし、これより複雑なものを処理するには、正規表現を使用せずにHTMLを解析する必要があります。

おすすめ記事