chalow に -u をつけるとサイズが変わったときだけファイルを書き出すようになるんだけど,当然これは変更の検出としては完全ではなくて,たまにこける.これが気に食わないんだけど,じゃあ -u をつけないとどうなるかというと,すべてのファイルが書き出されて,かつそれらの「最終更新時間: 20YY-MM-DD HH:MM」の部分が書き変わっちゃうので,sitecopy で差分アップロードするときに全部対象になっちゃって嫌.
というわけで,真面目に内容を比較するようにした.output_to_file の中で,古いファイルの内容と新しいファイルの内容のそれぞれについて,更新時刻の部分を除いて比較.一致してたら return とする.
今のこのログの分量で,処理時間の増加は 1 秒以内だから,まあこれでいいかな.ついでに念のため直接比較ではなくて MD5 の比較を試してみたけど,ほとんど変化なしというかむしろ悪いかも.
最終更新時間: 2009-01-04 15:31