Wie vergleiche ich zwei Ordner in Linux, wenn sie fast gleich sind?

2776
Deqing

Normalerweise verwende ich meldzum Vergleichen von Ordnern. Es ist jedoch nicht praktisch, wenn ein Ordner viele Unterordner hat, da ich in jeden Unterordner klicken muss, um zu sehen, ob es Unterschiede gibt.

Gibt es ein Werkzeug zum Vergleichen von Ordnern, das nur Unterschiede anzeigt?

1

2 Antworten auf die Frage

2
ernie

Ein Befehlszeilendiff führt dies aus, und ein kleines grep würde Ihnen eine Liste verschiedener Dateien geben, zB:

diff -r dir1 dir2 | grep -e "Only|diff" 

Könnte offensichtlich verbessert werden. . .

Nun, 'diff -r dir1 dir2' hat bereits eine erwartete Ausgabe, thx. Deqing vor 11 Jahren 0
2
Thijs

For a nice visual side-by-side comparison I like to use two files of md5 checksums and vimdiff.

This has the added bonus of being to easy to compare two directories on two different servers.

It only shows you which files are different, not the internal differences.

To compare the /etc/ directories on servers sr1 and sr2:

(On first server:)

for i in (find /etc/ -print); do md5sum $i; done | awk '' | sort > ~/tmp/etc-sr1.txt 

(on second server:)

for i in (find /etc/ -print); do md5sum $i; done | awk '' | sort > ~/tmp/etc-sr2.txt 

scp ~/tmp/etc-sr2.txt sr1:tmp/etc-sr2.txt

(On first server:)

vimdiff ~/tmp/etc-sr1.txt ~/tmp/etc-sr2.txt