In Ihrer ersten diff
Ausgabe (so genanntes "normales Diff") lautet die Bedeutung wie folgt
<
- kennzeichnet Zeilen in file1.txt
>
- kennzeichnet Zeilen in file2.txt
3d2
und 5a5
bezeichnen betroffene Zeilennummern und welche Aktionen ausgeführt wurden. d
steht für Löschen, a
steht für Hinzufügen (und c
steht für Ändern). Die Zahl links vom Zeichen ist die Zeilennummer in Datei1.txt, die Zahl rechts die Zeilennummer in Datei2.txt. So 3d2
erfahren Sie, dass die 3. Zeile in file1.txt gelöscht wurde und die Zeilennummer 2 in file2.txt hat (oder besser gesagt, dass der Zeilenzähler nach dem Löschen auf Zeilennummer 2 zurückging). 5a5
teilt Ihnen mit, dass wir mit Zeile 5 in Datei1.txt begonnen haben (die tatsächlich leer war, nachdem wir in der vorherigen Aktion eine Zeile gelöscht haben), die Zeile hinzugefügt haben und diese hinzugefügte Zeile die Nummer 5 in Datei2.txt ist.
Die Ausgabe des diff -u
Befehls ist etwas anders formatiert (sogenanntes "Unified Diff" -Format). Hier diff
zeigt uns ein einzelnes Stück des Textes anstelle von zwei separaten Texten. In der Zeile bezieht sich @@ -1,5 +1,5 @@
der Teil -1,5
auf file1.txt und der Teil +1,5
auf file2.txt. Sie teilen uns mit, dass diff
ein 5 Zeilen langer Text ab Zeile 1 in der Datei file1.txt angezeigt wird. Und das Gleiche gilt für die Datei2.txt - diff
zeigt uns 5 Zeilen ab Zeile 1.
Wie ich bereits sagte, werden die Zeilen aus beiden Dateien zusammen angezeigt
this is the original text
line2
-line3
line4
happy hacking !
+GNU is not UNIX
Hier sind -
die Zeilen angegeben, die aus file1.txt gelöscht wurden, und +
die Zeilen, die hinzugefügt wurden.