Ich vergleiche zwei Textdateien und erhalte das folgende Ergebnis:
diff file1 file2 | grep 12345678
> 12345678
< 12345678
Wie Sie sehen können, ist in beiden Dateien dieselbe Zeichenfolge vorhanden, und beide Dateien wurden mit sortiert sort
.
Die Zeilenenden müssen hier im Weg sein (Windows vs. Unix).
Gibt es eine Möglichkeit diff
, Zeilenenden unter Unix zu ignorieren?
diff --strip-trailing-cr file1 file2
?-w
?-w
ignoriert Unterschiede in Leerzeichen und"White space" characters include tab, vertical tab, form feed, carriage return, and space
. Zum Beispieldiff a b
wird Unterschied für "Linie" und<tab>line
, aberdiff -w a b
nichtAntworten:
Verwenden Sie die
--strip-trailing-cr
Option:Die Option bewirkt
diff
, dass das nachfolgende Wagenrücklaufzeichen entfernt wird, bevor die Dateien verglichen werden.quelle
diff -w
ähnliche Ergebnisse zu erzielen, aber dies ist die richtigste Antwort.