Leser wie Sie helfen, MUO zu unterstützen. Wenn Sie über Links auf unserer Website einen Kauf tätigen, erhalten wir möglicherweise eine Affiliate-Provision.
Hatten Sie jemals zwei ähnliche Dateien und haben sich gefragt, welche Teile unterschiedlich sind? Schreiben Sie Code und versuchen Sie herauszufinden, wie Sie Änderungen einfügen können, die Sie oder ein anderer Programmierer vorgenommen haben? Es gibt ein Standard-Linux-Dienstprogramm namens "diff", das Ihnen helfen wird.
Was ist diff?
diff ist ein Dienstprogramm, das die Unterschiede zwischen zwei Textdateien anzeigt, woher der Name kommt. Es ist Teil von dem POSIX-Standard, was bedeutet, dass es auf fast allen Unix-ähnlichen Systemen vorhanden ist, einschließlich Linux sowie macOS und den anderen BSDs.
Wenn Sie eine große Linux-Distribution verwenden, haben Sie höchstwahrscheinlich die GNU-Version. Wenn du dran bist eine minimale Linux-Distribution, haben Sie es möglicherweise als Teil der BusyBox- oder Toybox-Bibliothek oder der BSD-Version, wenn Sie sich auf einem BSD-System befinden. Sie können sehen, welche Version Sie haben, indem Sie die Handbuchseite überprüfen:
Mann diff
Vergleichen zweier Dateien unter Linux mit diff
Um zwei Textdateien zu vergleichen, übergeben Sie einfach ihren Pfad als Argumente an diff:
diff Datei1 Datei2
diff zeigt die Zeilen an, die sich zwischen den beiden in der Datei unterscheiden. Zeilen in der ersten Datei wird ein " vorangestellt<" und den Zeilen in der zweiten wird ein " vorangestellt>„Charakter. Die Ausgabe zeigt geänderte, angehängte oder gelöschte Zeilen an, einschließlich der Anzahl der insgesamt betroffenen Zeilen.
Wenn Sie die erste Zeile ändern, gibt diff "1c1", was bedeutet "beginne bei Zeile 1, ändere Zeile 1." In diff, "A" steht für "anhängen", "C" für "ändern" Und "D" für "löschen."
Andere Diff-Funktionen und Optionen
Um Dateien nebeneinander anzuzeigen, verwenden Sie die -y Möglichkeit:
diff -y Datei1 Datei2
Der -u Option erzeugt ein "einheitliches" Aussehen mit einem Bearbeitungsskript für den ed-Editor, so dass Änderungen automatisch durchgeführt werden können.
Bevor verteilte Versionskontrollsysteme wie Git weit verbreitet waren, forderten Open-Source-Projekte Patches in diesem Format per E-Mail an und wendeten sie dann mit dem Patch-Programm auf die Codebasis an.
Jetzt können Sie Dateien unter Linux mit diff vergleichen
Das Diff-Dienstprogramm mag obskur erscheinen, aber es ist von Vorteil, die Unterschiede zwischen zwei Dateien zu sehen, unabhängig davon, ob Sie die Dateien einfach vergleichen oder Patches an einen Open-Source-Entwickler senden.
Wenn Sie kein Fan des Linux-Terminals sind, müssen Sie nicht einmal die Befehlszeile verwenden, um Dateien zu vergleichen, oder überhaupt Ihren lokalen Computer verwenden. Es gibt Online-Tools, mit denen Sie Dateien im Internet vergleichen können.