Linux: So vergleichen Sie den Inhalt von Verzeichnissen

Foto des Autors

Oft hat man zwei komplette Verzeichnisbäume des selben Projekts vorliegen und möchte die Unterschiede beider Versionen herausfinden.

Manuell ist das eine richtig unangenehme und fehlerträchtige Arbeit. Vor allem ist es überflüssig, denn der Computer macht das viel schneller.

Hinweis: Zwar nutzt das vorgestellte Verfahren die Linux-Kommandozeile, aber die Anwendung ist ganz leicht, so dass Sie auch als Neuling auf dieser Ebene des Betriebssystems keinerlei Probleme haben sollten..

So lassen Sie Verzeichnisbäume vergleichen

Angenommen, Sie haben in einem Directory zwei Unterordner „Projekt_alt“ und „Projekt_neu“. Die symbolisieren zum Beispiel zwei verschiedene Stände des Projektfortschritts.

Nun öffnen Sie eine Linux-Kommandozeile, also etwa mit dem Eintrag „Terminal“ Ihrer grafischen Umgebung und wechseln in das übergeordnete Verzeichnis.

Geben Sie dann ein

diff -rq Projekt_alt Projekt_neu

Der Befehl „diff“ geht nun alle Verzeichisse durch und vergleicht die gefundenen Dateien aus beiden Ordnern nach ihrem Inhalt.

Der Parameter „r“ bewirkt dabei, dass rekursiv alle Verzeichnisebenen durchwandert werden und das „q“ sorgt für die Unterdrückung der Ausgabe von Dateien ohne Unterschiede.

Nun erhalten Sie eine Liste von Abweichungen beider Ordner. Das Programm meldet sowohl inhaltliche Abweichungen, als auch die Fälle, wo Dateien nur in einem der beiden Verzeichnisse zu finden sind.

diff mit Verzeichnissen
diff mit Verzeichnissen

Wollen Sie die Ausgabe zur weiteren Verarbeitung in einer Textdatei ablegen lassen, nutzen Sie folgende Befehlsvariante:

diff -rq Projekt_alt Projekt_neu >unterschiede.txt 2>&1

Der letzte Teil der Zeile ist notwendig. Wie unser Leser „Domi78“ richtig anmerkte, werden die Meldungen über Differenzen auf den Fehlerkanal ausgegeben und würden ohne das „2>&1“ auf der Konsole statt in der Textdatei landen.

Werbung
Foto des Autors

Markus Schraudolph

Markus ist IT-Fachjournalist der ersten Stunde. Seine ersten Texte veröffentlichte er 1987 beim legendären Markt&Technik-Verlag. Seine Spezialität sind Datenbanken und Microsoft Excel. Als PHP-Experte programmierte Markus maßgeblich die erste Version des Tippscout und ist anerkannter Experte für PHP, MySQL und Wordpress.