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

Wie kann man einige Unterschiede im diff-Befehl ignorieren?

Sie könnten die beiden Dateien durch sed filtern um die Zeilen zu eliminieren, die Sie nicht interessieren. Das allgemeine Muster ist /regex1/,/regex2/ d um alles zwischen Zeilen zu löschen, die mit zwei regulären Ausdrücken übereinstimmen. Zum Beispiel:

diff <(sed '/abXd/,/abYd/d' file1) <(sed '/abXd/,/abYd/d' file2)

Verbesserung der früheren Lösung von John Kugelman:

diff <(sed 's/ab[XY]d/abd/g' file1) <(sed 's/ab[XY]d/abd/g' file2)

ist wahrscheinlich das, wonach Sie suchen! Diese Version normalisiert die spezifische Änderung in jeder Zeile, ohne die Zeile selbst zu löschen. Dadurch kann diff alle anderen anzeigen Unterschiede, die auf der Linie bleiben.


Linux
  1. So verwenden Sie den Linux-Befehl sed

  2. So führen Sie einen zeilenweisen Vergleich von Dateien in Linux mit dem Befehl diff durch - Teil II

  3. So verwenden Sie den Sed-Befehl unter Linux mit Beispielen

  4. So verwenden Sie den Su-Befehl unter Linux

  5. So ersetzen Sie eine Zeichenfolge in mehreren Dateien in der Linux-Befehlszeile

9 diff-Befehlsbeispiele in Linux

Diff-Befehl unter Linux

Einige gute Alternativen zu du Command

So entfernen Sie Zeilen aus einer Datei mit dem Sed-Befehl

So verwenden Sie den PS-Befehl

So färben Sie die Diff-Ausgabe für eine bessere Ansicht ein