GNU/Linux >> LINUX-Kenntnisse >  >> Linux

diff-Befehlsbeispiele in Linux

Der Befehl diff wird verwendet, um Textdateien zu vergleichen. Der Befehl zeigt die beiden Dateien und die Unterschiede zwischen ihnen an. Mit verschiedenen Symbolen schlägt die Ausgabe vor, wie Sie eine Datei ändern können, um sie mit der anderen identisch zu machen. Jedes Symbol hat eine besondere Bedeutung.

Das Kleiner-als-Symbol (<) mit einer Linie dahinter bedeutet, dass die Linie aus der ersten Datei entfernt werden sollte, da sie in der zweiten nicht erscheint. Das Größer-als-Symbol (>) mit einer Zeile dahinter bedeutet, dass eine Zeile aus der zweiten Datei hinzugefügt werden soll. Zusätzlich gibt der diff-Befehl auch die Zeilennummern für jede Datei an, die von Lösch-, Hinzufügungs- und Änderungsoperationen betroffen wäre.

Syntax

Die Syntax des diff-Befehls lautet:

# diff {file name 1} {file name 2}

diff BEFEHLSOPTIONEN

Der Befehl diff hat verschiedene Optionen, mit denen Sie die Art der Ausgabe festlegen können.

Option Beschreibung
-b Abstandsunterschiede ignorieren.
-i Groß-/Kleinschreibung ignorieren.
-t Tabulatorzeichen in Ausgabezeilen erweitern.
-w Ignorieren Sie Abstandsunterschiede und Tabulatoren.
-c Zeigen Sie eine Liste der Unterschiede mit drei Kontextzeilen an.
-u Ausgabeergebnisse im einheitlichen Modus, der ein optimiertes Format darstellt.

diff-Befehlsbeispiele

1. Dateien vergleichen (listet Änderungen auf, um `alte_Datei` in `neue_Datei` umzuwandeln):

# diff old_file new_file

2. Dateien vergleichen, Leerzeichen ignorieren:

# diff --ignore-all-space old_file new_file

3. Dateien vergleichen und die Unterschiede nebeneinander anzeigen:

# diff --side-by-side old_file new_file

4. Vergleichen Sie Dateien und zeigen Sie die Unterschiede im einheitlichen Format (wie von `git diff` verwendet):

# diff --unified old_file new_file

5. Verzeichnisse rekursiv vergleichen (zeigt Namen für unterschiedliche Dateien/Verzeichnisse sowie Änderungen an Dateien):

# diff --recursive old_directory new_directory

6. Vergleichen Sie Verzeichnisse und zeigen Sie nur die Namen der unterschiedlichen Dateien an:

# diff --recursive --brief old_directory new_directory

7. Erstellen Sie eine Patch-Datei für Git aus den Unterschieden zweier Textdateien und behandeln Sie nicht vorhandene Dateien als leer:

# diff --text --unified --new-file old_file new_file > diff.patch

8. diff kann auch Verzeichnisse vergleichen:

# diff dir1 dir2

die alle gleichnamigen Dateien in diesen Verzeichnissen vergleicht und alle Dateien auflistet, die in einem Verzeichnis erscheinen, aber nicht im anderen. Um ganze Verzeichnishierarchien rekursiv zu vergleichen, verwenden Sie die Option -r:

# diff -r dir1 dir2

was einen (möglicherweise massiven) Bericht aller Unterschiede erzeugt.

Schlussfolgerung

Der Befehl diff vergleicht zwei Dateien Zeile für Zeile oder zwei Verzeichnisse. Beim Vergleichen von Textdateien kann diff detaillierte Berichte über ihre Unterschiede erstellen. Bei Binärdateien gibt diff lediglich an, ob sie sich unterscheiden oder nicht. Wenn es für alle Dateien keine Unterschiede gibt, erzeugt diff keine Ausgabe.


Linux
  1. 7 Beispiele für Linux-df-Befehle

  2. 8 Linux TR-Befehlsbeispiele

  3. 7 Patch-Befehlsbeispiele zum Anwenden von Diff-Patch-Dateien unter Linux

  4. rm-Befehlsbeispiele unter Linux

  5. ps-Befehlsbeispiele in Linux

Rm-Befehl unter Linux

lsof-Befehl unter Linux (10 Beispiele)

Beispiele für Linux-Diff-Befehle

id-Befehlsbeispiele in Linux

lsof-Befehl unter Linux mit Beispielen

Linux-Comm-Befehl mit Beispielen