Následující (pokud nahradíte první adresář za adresář1 a druhý za adresář2) by mělo udělat to, co hledáte, a to rychle:
find directory1 -type d -printf "%P\n" | sort > file1
find directory2 -type d -printf "%P\n" | sort | diff - file1
 Základním principem je, že vytiskne všechny adresáře včetně cest podadresářů vzhledem k základním adresářům adresářeN.
To by mohlo spadnout (produkovat divný výstup), pokud máte návrat vozíku v některých názvech adresářů, ale ne v jiných.
vimdiff <(cd dir1; find . | sort) <(cd dir2; find . | sort)
 vám poskytne pěkné zobrazení dvou hierarchií adresářů vedle sebe se složenými běžnými sekcemi.
 Obvykle používám rsync pro tento úkol:
rsync -nav --delete DIR1/ DIR2
 
 BUĎTE VELMI OPATRNÍ  vždy použít -n , neboli --dry-run , nebo synchronizuje (změní obsah) adresářů.
 To porovná soubory na základě časů a velikostí úprav souborů... myslím to je to, co opravdu chceš, nebo ti to alespoň nevadí? Mám pocit, že jen chcete, aby to proběhlo rychleji , ne že jej potřebujete k ignorování rozdílu mezi obsahem souboru. Pokud chcete, aby nevypisoval různé soubory se stejnými názvy, myslím, že přidání --ignore-existing možnost to udělá.
 Také si uvědomte, že nevkládání / na konci DIR1 způsobí, že porovná adresář DIR1 s obsahem z DIR2 .
 Výstup je nakonec trochu podrobný, ale ukáže vám, které soubory/adresáře se liší. Soubory/adresáře přítomné v DIR2 a ne v DIR1 bude uvozeno slovo deleting .
 V některých situacích může být vhodnější odpověď @slartibartfast, i když budete muset odstranit -type d možnost povolit výpis souborů, které nejsou v adresáři. rsync bude rychlejší, pokud máte k porovnání značné množství souborů/adresářů.