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.