Vous pouvez filtrer les deux fichiers via sed
pour éliminer les lignes dont vous ne vous souciez pas. Le modèle général est /regex1/,/regex2/ d
pour supprimer tout ce qui se trouve entre les lignes correspondant à deux regex. Par exemple :
diff <(sed '/abXd/,/abYd/d' file1) <(sed '/abXd/,/abYd/d' file2)
Amélioration de la solution précédente de John Kugelman :
diff <(sed 's/ab[XY]d/abd/g' file1) <(sed 's/ab[XY]d/abd/g' file2)
est probablement ce que vous recherchez peut-être ! Cette version normalise le changement spécifique sur chaque ligne sans supprimer la ligne elle-même. Cela permet à diff d'afficher n'importe quel autre différences qui restent sur la ligne.