Diff je skvělý nástroj pro zobrazení změn mezi dvěma soubory. Jak ale zobrazit podobnosti dvou textových souborů (a přitom ignorovat rozdíly)?
Tj. vzorový vstup:
a:
Foo Bar
X
Hello
World
42
b:
Foo Baz
Hello
World
23
Pseudo výstup (něco jako toto):
@@ 2,3
=Hello World
Pouhé seřazení obou souborů a použití comm nestačí, protože v takovém případě se informace o řádku ztratí.
Přijatá odpověď:
Co takhle použít diff, i když nechcete diff? Zkuste toto:
diff --unchanged-group-format='@@ %dn,%df
%<' --old-group-format='' --new-group-format=''
--changed-group-format='' a.txt b.txt
Zde je to, co dostanu s vašimi ukázkovými daty:
$ cat a.txt
Foo Bar
X
Hello
World
42
$ cat b.txt
Foo Baz
Hello
World
23
$ diff --unchanged-group-format='@@ %dn,%df
%<' --old-group-format='' --new-group-format=''
--changed-group-format='' a.txt b.txt
@@ 2,3
Hello
World
Linux – zobrazuje pouze „zajímavé“ přípojné body / Filtrování Nezajímavých typů?
Linux – vzhledem k hash závazku Git, jak zjistit, která verze jádra jej obsahuje?