Wie geht es dem?diffEigentum des Befehls tatsächlich? Der "diffDer Befehl ”Vergleicht die beiden Dateien und gibt eine Liste von Unterschieden zwischen beiden Dateien aus. Genauer gesagt ergibt es eine Liste von Modifikationen. Der "diffDer Befehl ”wird auch von den Programmierern verwendet, um den Unterschied zwischen zwei Quellcode -Dateien für die Entwicklung von Patches zu erhalten.
Beachten Sie, dass die Reihenfolge der Dateien sehr wichtig ist, bevor Sie in die Beispiele eintauchen. Weil das "diffDer Befehl ”gibt eine Ausgabe an, die in der Reihenfolge der Dateien basiert.
So verwenden Sie den Befehl „Diff“ unter Linux, um Dateien zu vergleichen:
Die Syntax der “diffDer Befehl ”wird unten erwähnt:
$ diff [Optionen] [Datei1] [Datei2]
Erstellen Sie zunächst zwei Dateien. Ich erstelle Textdateien mit dem Namen von “Test_file_1.txt" Und “Test_file_2.txt". Diese Dateien enthalten Inhalte mit einem kleinen Unterschied:
Verwenden Sie nun den folgenden Befehl, um den Unterschied zu erhalten:
$ diff test_file_1.txt test_file_2.txt
In der Standardausgabe wurden die Zeilen angezeigt, die gemäß der Reihenfolge der im Befehl genannten Dateien übereinstimmen. Lassen Sie uns also die Ausgabe dekodieren:
Der Vergleich der Dateien ist gekennzeichnet, und jedes Etikett hat eine Nummer auf beiden Seiten. Das Format lautet wie folgt:
[Zeilennummer der Datei 1] [Label (A, C, D)] [Zeilennummer der Datei 2]
Es gibt drei Etiketten:
"2d1" Zeigt an, dass sie die Zeilennummer 2 der ersten Datei löschen, die mit der zweiten Datei aus Zeilennummer 1 übereinstimmt.
Ähnlich, "4c3" bedeutet, in der vierten Zeile der ersten Datei eine Änderung vorzunehmen, die die Zeilennummer 3 der zweiten Datei entspricht, da beide Zeilen geringfügig unterschiedlich sind.
Es gibt eine andere Methode, um den Unterschied anzuzeigen und die zu verwenden "Diff" Befehl mit dem "-Y" Möglichkeit:
$ diff -y -W 60 test_file_1.txt test_file_2.txt
In der obigen Ausgabe der Inhalt von “Test_file_1.txt" wird auf der linken Seite angezeigt, während der Inhalt von “Text_file_2.txt" wird auf der rechten Seite angezeigt. Der Unterschied wird durch die Symbole angezeigt:
Das "-W" zeigt die Breite zwischen dem Inhalt von zwei Dateien an. Verwenden Sie Folgendes, um separat zu erreichen und den Unterschied anzusehen:
$ diff -y -W 60 -Suppress -Common -Lines test_file_1.txt test_file_2.txt
So erhalten Sie die Ausgabe in einer Zeile mit dem Befehl „Diff“:
Wenn die beschriftete Methode für Sie schwer zu dekodieren ist, gibt es einen einfacheren Ansatz. Verwendung der "-Q" Option mit dem "Diff" Der Befehl gibt Ihnen Ausgabe in einer Zeile. Nun, ohne zusätzliche Informationen:
$ diff -q test_file_1.txt test_file_2.txt
Wenn sich die Dateien unterscheiden, gibt der obige Befehl eine Ausgabe an. Wenn die Dateien identisch sind, gibt es keine Ausgabe. Um es zu demonstrieren, erstelle ich eine Kopie von “Test_file_1.txt" Verwendung:
$ cp test_file_1.txt test_file_3.txt
Eine neue Datei wird mit dem Namen von erstellt “Test_file_3.txt" mit dem gleichen Inhalt enthalten wie “Test_file_1.txt" hat. Jetzt benutzen:
$ diff -q test_file_1.txt test_file_2.txt
Da beide Dateien einen ähnlichen Inhalt haben, würde es daher keine Ausgabe geben.
So überprüfen Sie den Unterschied von Dateien im Kontextmodus mit dem Befehl „Diff“:
Um den Vergleich im Kontextmodus zu erhalten, die "-C" Option wird mit dem verwendet "Diff" Befehl:
$ diff -c test_file_1.txt test_file_2.txt
Lassen Sie uns die Ausgabe analysieren.
Um den Unterschied aufrechtzuerhalten, wird die erste Datei zusammen mit dem Datum und der Uhrzeit der Erstellung durch „***“ angezeigt, während die zweite Datei durch „-“ angegeben ist.
Die nächste Zeile bedeutet eine Reihe von Linien, die während des Vergleichs berücksichtigt werden. Für die erste Datei ist es "*** 1,6 ****" und für die zweite Datei ist es "-1,5-":
Der Unterschied wird durch die Symbole angezeigt:
So überprüfen Sie die Differenz der Dateien im Unified -Modus mit dem Befehl „Diff“:
Der einheitliche Modus ist dem Kontextmodus ziemlich ähnlich, jedoch ohne redundante Informationen. Die Flagge, die wir verwenden, ist "-U":
$ diff -u test_file_1.txt test_file_2.txt
In der Ausgabe wird die erste Datei durch "-" und die zweite durch "+++" angezeigt. Die zweite Zeile zeigt die Anzahl der zum Vergleich in beiden Dateien berücksichtigten Zeilen und dann der zu gelöschte Inhalt, hinzugefügt oder mit den Symbolen mit den Symbolen. In beiden Dateien gibt es kein Symbol mit ähnlichen Zeilen.
So ignorieren Sie die Fallempfindlichkeit, während Sie den Befehl „Diff“ verwenden:
Wenn Sie die Dateien vergleichen möchten, während Sie die Fallempfindlichkeit ignorieren, verwenden Sie die "-ich" Flagge:
$ diff -i test_file_1.txt test_file_2.txt
Zur Demonstration habe ich das gemacht "D" von "Deepin" in der ersten Datei klein:
Wie im ersten Befehl zu sehen ist, wird der Unterschied angegeben; während dem Benutzen "-ich" Dieser Unterschied wurde entfernt.
Einige andere nützliche Optionen der "Diff" Der Befehl ist unten aufgeführt:
Möglichkeit | Beschreibung |
---|---|
-A | Diese Option behandelt alle Dateien als Textdateien |
-B | Es ignoriert Änderungen, bei denen alle Linien leer sind |
-E | Diese Option ignoriert die Registerkartenerweiterung |
-ICH | Es ignoriert die Änderungen, an denen alle Zeilen übereinstimmen |
-S | Gibt Ausgabe an, wenn zwei Dateien identisch sind |
-w | Es ignoriert den ganzen weißen Raum |
-Z | Es ignoriert Weißraum am Ende der Linie |
So verwenden Sie VIM -Editor, um zwei Dateien zu vergleichen:
Eine andere Methode zum Vergleichen von zwei Dateien ist die Verwendung der Verwendung des "Vimdiff" Befehl. Dafür müssen Sie VIM installieren lassen:
$ sudo apt install Vim
Um jetzt zwei Dateien zu vergleichen, verwenden Sie nun:
$ vimdiff test_file_1.txt test_file_2.txt
Beide Dateien werden nebeneinander geöffnet. Der nicht übereinstimmende Teil wird hervorgehoben:
So vergleichen Sie zwei Dateien mit "Colordiff":
Ein anderer Ansatz ist eine Art Erweiterung der "Diff" Befehl. Sie können den Vergleich identifizierbarer machen, indem Sie Farben hinzufügen. Umgebenden zu installieren:
$ sudo apt installieren colordiff
Verwenden Sie, um Dateien zu vergleichen:
$ colordiff test_file_1.txt test_file_2.txt
Sie können ersetzen "Diff" mit "Colordiff" Um die Standardausgabe der zu erhalten "Diff" Befehl im farbigen Format.
Abschluss:
Um Dateien in Linux und sogar in MacOS zu vergleichen, wird ein verwendetes Dienstprogramm als "Diff" bezeichnet. Das Dienstprogramm „Diff“ vergleicht zwei Dateien und gibt Informationen über die Unterschiede zwischen den beiden Dateien an. Die Entwickler verwenden hauptsächlich den Befehl „Diff“, um Patch -Dateien zu erstellen.
In diesem Leitfaden haben wir die gründlich besprochen "Diff" Befehl und wie Sie es verwenden, um zwei Dateien mit verschiedenen Optionen zu vergleichen. Wir haben auch gelernt, wie man benutzt "Colordiff" Damit die Dateiunterschiede erkennbarer machen. Wenn Sie jedoch ein terminalbasiertes Dienstprogramm schwer verwenden, gibt es auch einige GUI -basierte Tools wie Kompare, Diffmerge, MELD -Diff -Tool und Diffuse -GIFF -Tool.