座敷牢日誌

都落ちした元SEがソフトウェアやネット関連のことを書いています

diff+pandocでhtmlファイルの差分を取る

htmlファイルの差分を取るなら、diff コマンドを使えばいい。

$ diff -cN old/index.html new/index.html

ところで、記述内容の差分を取りたいなら、タグやメタ情報のようなものを無視する形で 比較したい。今回はdoxygenで生成されたhtmlドキュメントの差分を取りたい……、 という話で、前述の方法だと見る必要のない差分までたくさん出力されてしまう。

そこで pandoc でプレーンテキストへ変換した結果を比較する形にしてみた。

$ diff -cN <(pandoc -f html -t plain -o - old/index.html) <(pandoc -f html -t plain -o - new/index.html)

差分結果に出てくる比較元・先のファイル名がtmpに出力された一時ファイルの名前になっ てしまうので、 複数ファイルをまとめて比較するには不向きだが、ファイル単体での比較ならこれで十分な感じ。

*** /tmp/zshCOR5LW 2014-01-27 10:47:19.218750000 +0900
--- /tmp/zshChD7VE 2014-01-27 10:47:19.218750000 +0900
***************
*** 100,109 ****
広告を非表示にする