web-dev-qa-db-ja.com

行ごとではなく、異なるファイルのディレクトリを比較する方法

2つのディレクトリで異なるファイルを再帰的に表示したいと思います。 Diffはこれを行うことができますが、行ごとの違いが表示されます。これは望ましくありません。これを行うツール、またはDiffでこれを行う方法はありますか(私はマニュアルページを読みましたが、何も表示されませんでした)。

16
user13743

どうですか

diff -rq DIR1 DIR2

または

diff -rqb DIR1 DIR2

-rは再帰的です

-qは簡単なもので、ファイルが異なるかどうかを通知します(つまり、行ごとの違いは表示されません)

-bは空白を無視します

29
rob

-qオプションを探しています:

dlamblin$ diff -r a b
diff -r a/a b/a
0a1,2
> 
> 
Only in b: b
dlamblin$ diff -qr a b
Files a/a and b/a differ
Only in b: b
2
dlamblin

これを行う1つの方法は、

diff dir1 dir1| grep "diff "

それでも行ごとの比較は行われますが、各ファイル比較は「diff dir1/file dir2/file」で始まるため、「diff」をgrepすると、それらの行(つまり、異なるファイル)のみが表示されます。

1
user13743

Emacsユーザーの場合は、ediff-directoriesを確認してください。ファイルの違いを確認してから、違いの理由を確認する必要がある場合は、行ごとの違いにドリルダウンできます。

1
Doug Harris