So vergleichen Sie Verzeichnisse mit Binärdateien

So vergleichen Sie Verzeichnisse mit Binärdateien

Ich möchte Verzeichnisse mit Binärdateien vergleichen. Eigentlich interessiert mich nicht, was die tatsächlichen Unterschiede zwischen den Dateien sind, sondern ob es einen Unterschied gibt (und welche Dateien sich unterscheiden). Früher habe ich verwendet meld, aber damit kann man keine Binärdateien vergleichen.

Welches Dateivergleichstool kann das?

NOTIZ:Dabei spielt es keine Rolle, ob es sich um ein grafisches Tool handelt oder ob es nur über eine Befehlszeile verfügt.

Antwort1

Dies lässt sich ganz einfach mit erledigen diff. Zum Beispiel:

$ ls -l foo/
total 2132
-rwxr-xr-x 1 terdon terdon 1029624 Nov 18 13:13 bash
-rwxr-xr-x 1 terdon terdon 1029624 Nov 18 13:13 bash2
-rwxr-xr-x 1 terdon terdon  118280 Nov 18 13:13 ls

$ ls -l bar/
total 1124
-rwxr-xr-x 1 terdon terdon 1029624 Nov 18 13:14 bash
-rwxr-xr-x 1 terdon terdon  118280 Nov 18 13:14 ls

$ diff bar/ foo/
Only in foo/: bash2

Im obigen Beispiel enthalten die Verzeichnisse foo/und bar/Binärdateien und bash2liegen nur in foo/.

Sie könnten also etwas Einfaches wie das Folgende ausführen:

$ diff bar/ foo/ && echo "The directories' contents are identical"

Dadurch werden Ihnen die unterschiedlichen Dateien angezeigt, falls vorhanden, oder es wird „Der Inhalt der Verzeichnisse ist identisch“ ausgegeben, falls dies der Fall ist. Um auch Unterverzeichnisse und alle darin enthaltenen Dateien zu vergleichen, verwenden Sie diff -r. Kombinieren Sie es mit , -qum die Ausgabe für Textdateien zu unterdrücken.

Antwort2

cmpSie können zwei Dateien mit dem Befehl vergleichen

Verwendung:

cmp file1 file2

Es wird die Anzahl der Bytes Differenz und die Zeilennummer geben

Antwort3

Ein vollständiger Vergleich, der identische, unterschiedliche und nur in dem einen oder anderen Ordner bzw. Unterordner vorhandene Elemente anzeigt:

diff -rqs bar/ foo/

(Sie erhalten für jede Datei eine Ausgabe, die Angabe „Verzeichnisse identisch“ ist nicht erforderlich.)

verwandte Informationen