2009年2月21日

GNU diff の地味だけど便利な機能

最近になって GNU diff の地味だけど便利な機能を2つ知りました。調べてみると、いずれも昔からある機能でした。

 

--side-by-side は2段組で結果を表示するオプションです。変更されていない行を含めて2つのファイルの内容全体と変更点が表示されるのがポイントです。変更された行の前後数行だけでなくファイル全体をまとめて読みたいときに使えます。デフォルトの表示の横幅は130文字です。必要に応じて --width オプションで変更できます。

こういった用途には meld などの GUI の diff ツールを使えばいいのですが、 ssh 端末しかないような状況で重宝します。

--strip-trailing-cr は行末の CR を無視する機能です。改行コードが CRLF と LF で食い違っているけど、中身はほぼ同じ、というファイルを比較するときに使えます。

以上、GNU diff の地味だけど便利な機能でした。