Handbücher für die Kommandozeile

Man » diff Manual online - detaillierte Online-Dokumentation für die diff-Manpage

🌍
diff - Vergleicht Dateien zeilenweise

SYNOPSIS

diff [OPTION]... DATEIEN

BESCHREIBUNG

Vergleicht DATEIEN zeilenweise.

Obligatorische Argumente für lange Optionen sind auch für kurze Optionen obligatorisch.

--normal
gibt einen normalen Diff-Ausgabe aus (Standard)

-q, --brief
meldet nur, wenn sich Dateien unterscheiden

-s, --report-identical-files
meldet, wenn zwei Dateien identisch sind

-c, -C NUM, --context[=NUM]
gibt NUM (Standard 3) Zeilen des kopierten Kontexts aus

-u, -U NUM, --unified[=NUM]
gibt NUM (Standard 3) Zeilen des einheitlichen Kontexts aus

-e, --ed
gibt ein ed-Skript aus

-n, --rcs
gibt einen RCS-Format-Diff aus

-y, --side-by-side
gibt in zwei Spalten aus

-W, --width=NUM
gibt maximal NUM (Standard 130) Druckspalten aus

--left-column
gibt nur die linke Spalte der gemeinsamen Zeilen aus

--suppress-common-lines
gibt gemeinsame Zeilen nicht aus

-p, --show-c-function
zeigt, zu welcher C-Funktion jede Änderung gehört

-F, --show-function-line=RE
zeigt die letzte Zeile an, die mit RE übereinstimmt

--label LABEL
verwendet LABEL anstelle von Dateiname und Zeitstempel (kann wiederholt werden)

-t, --expand-tabs
erweitert Tabulatoren in Leerzeichen in der Ausgabe

-T, --initial-tab
richtet Tabulatoren aus, indem ein Tabulator am Anfang hinzugefügt wird

--tabsize=NUM
Tabstopps alle NUM (Standard 8) Druckspalten

--suppress-blank-empty
unterdrückt Leerzeichen oder Tabulatoren vor leeren Ausgabezellen

-l, --paginate
leitet die Ausgabe an 'pr' weiter, um sie zu paginieren

-r, --recursive
vergleicht rekursiv alle gefundenen Unterverzeichnisse

--no-dereference
verfolgt keine symbolischen Links

-N, --new-file
behandelt fehlende Dateien als leer

--unidirectional-new-file
behandelt fehlende erste Dateien als leer

--ignore-file-name-case
ignoriert die Groß- und Kleinschreibung beim Vergleichen von Dateinamen

--no-ignore-file-name-case
berücksichtigt die Groß- und Kleinschreibung beim Vergleichen von Dateinamen

-x, --exclude=PAT
schließt Dateien aus, die mit PAT übereinstimmen

-X, --exclude-from=DATEI
schließt Dateien aus, die mit einem beliebigen Muster in DATEI übereinstimmen

-S, --starting-file=DATEI
beginnt mit DATEI beim Vergleichen von Verzeichnissen

--from-file=DATEI1
vergleicht DATEI1 mit allen Operanden; DATEI1 kann ein Verzeichnis sein

--to-file=DATEI2
vergleicht alle Operanden mit DATEI2; DATEI2 kann ein Verzeichnis sein

-i, --ignore-case
ignoriert Unterschiede in der Groß- und Kleinschreibung der Dateiinhalte

-E, --ignore-tab-expansion
ignoriert Änderungen aufgrund der Tabulatorerweiterung

-Z, --ignore-trailing-space
ignoriert Leerzeichen am Zeilenende

-b, --ignore-space-change
ignoriert Änderungen in der Menge der Leerzeichen

-w, --ignore-all-space
ignoriert alle Leerzeichen

-B, --ignore-blank-lines
ignoriert Änderungen, bei denen alle Zeilen leer sind

-I, --ignore-matching-lines=RE
ignoriert Änderungen, bei denen alle Zeilen mit RE übereinstimmen

-a, --text
behandelt alle Dateien als Text

--strip-trailing-cr
entfernt abschließende Wagenrückläufe in der Eingabe

-D, --ifdef=NAME
gibt eine zusammengeführte Datei mit '#ifdef NAME'-Diffs aus

--GTYPE-group-format=GFMT
formatiert GTYPE-Eingabegruppen mit GFMT

--line-format=LFMT
formatiert alle Eingabezeilen mit LFMT

--LTYPE-line-format=LFMT
formatiert LTYPE-Eingabezeilen mit LFMT

Diese Formatierungsoptionen bieten eine detaillierte Steuerung der Ausgabe von diff und verallgemeinern -D/--ifdef.

LTYPE ist 'old', 'new' oder 'unchanged'. GTYPE ist LTYPE oder 'changed'.

GFMT (nur) kann Folgendes enthalten:

%<     Zeilen aus DATEI1

%>     Zeilen aus DATEI2

%=     Zeilen, die DATEI1 und DATEI2 gemeinsam haben

%[-][BREITE][.[PRÄZISION]}{doxX}BUCHSTABE
Printf-Formatbezeichner für BUCHSTABE

BUCHSTABEN sind wie folgt für eine neue Gruppe, Kleinbuchstaben für eine alte Gruppe:

F      erste Zeilennummer

L      letzte Zeilennummer

N      Anzahl der Zeilen = L-F+1

E      F-1

M      L+1

%(A=B?T:E)
wenn A gleich B ist, dann T, andernfalls E

LFMT (nur) kann Folgendes enthalten:

%L     Inhalt der Zeile

%l     Inhalt der Zeile, ohne abschließende Zeilenumbruch

%[-][BREITE][.[PRÄZISION]}{doxX}n
Printf-Formatbezeichner für Eingabezeilennummer

Sowohl GFMT als auch LFMT können Folgendes enthalten:

%%     %

%c'C'  das einzelne Zeichen C

%c'\OOO'
das Zeichen mit dem Oktalcode OOO

C      das Zeichen C (andere Zeichen stellen sich selbst dar)

-d, --minimal
versucht, einen kleineren Satz von Änderungen zu finden

--horizon-lines=NUM
behält NUM Zeilen des gemeinsamen Präfixes und Suffixes bei

--speed-large-files
geht von großen Dateien und vielen verstreuten kleinen Änderungen aus

--color[=WANN]
färbt die Ausgabe ein; WANN ist 'never', 'always' oder 'auto'; einfaches --color bedeutet --color='auto'

--palette=PALETTE
die Farben, die verwendet werden, wenn --color aktiv ist; PALETTE ist eine durch Doppelpunkt getrennte Liste von Terminalfunktionen

--help zeigt diese Hilfe an und wird beendet

-v, --version
gibt Versionsinformationen aus und wird beendet

DATEIEN sind 'DATEI1 DATEI2' oder 'VERZEICHNIS1 VERZEICHNIS2' oder 'VERZEICHNIS DATEI' oder 'DATEI VERZEICHNIS'. Wenn --from-file oder --to-file angegeben ist, gibt es keine Einschränkungen für DATEI(E). Wenn eine DATEI '-', liest sie die Standardeingabe. Der Exit-Status ist 0, wenn die Eingaben identisch sind, 1, wenn sie unterschiedlich sind, und 2, wenn ein Problem auftritt.

AUTOR

Geschrieben von Paul Eggert, Mike Haertel, David Hayes, Richard Stallman und Len Tower.

FEHLER MELDEN

Fehler melden an: _ GNU diffutils-Homepage: [https://www.gnu.org/software/diffutils/] Allgemeine Hilfe bei der Verwendung von GNU-Software: [https://www.gnu.org/gethelp/]

Copyright © 2025 Free Software Foundation, Inc. Lizenz GPLv3+: GNU GPL Version 3 oder später [https://gnu.org/licenses/gpl.html]. Dies ist freie Software: Sie können sie ändern und weiterverbreiten. Es gibt KEINE GARANTIE, im gesetzlich zulässigen Umfang.

SIEHE AUCH

wdiff(1), cmp(1), diff3(1), sdiff(1), patch(1)

Die vollständige Dokumentation für diff wird als Texinfo-Handbuch gepflegt. Wenn die Programme info und diff auf Ihrem System ordnungsgemäß installiert sind, sollte der Befehl

info diff

Ihnen Zugriff auf das vollständige Handbuch gewähren.