У меня есть две музыкальные библиотеки, одна более новая версия, чем другая. Я хотел бы сравнить их, чтобы выяснить, какие файлы мне нужно скопировать из нового музыкального дерева в старое.
Я попытался diff --brief -r /oldmusicdir/ /newmusicdir/
на основе предложения другого пользователя, но ^ C процесс через пятнадцать минут (я предполагаю, что diff сканирует сами музыкальные файлы - что не является необходимым).
Затем я попробовал find /oldmusicdir/ -type d | sort > oldmusicdir
старое и новое, затем запустил diff oldmusicdir newmusicdir
Однако, поскольку я хранил музыкальные каталоги в разных местах, каждая запись была помечена.
Затем я попытался запустить, find /musicdir/ -type d | basename -s - | sort > musicdir
но затем мой файл musicdir просто читал "-"
Кто-нибудь знает, как получить базовое имя для приема от STDIN? Или у кого-нибудь есть лучший способ быстрого сравнения двух музыкальных каталогов?
Спасибо!
rsync -nv --delete a/ b/ | grep deleting
дал мне список файлов, которые существовали на b, но не a. Спасибо!Как насчет генерации рекурсивного списка каталогов каждого каталога в отдельных файлах и последующего использования
diff
этих двух файлов?источник
diff --recursive --quiet --new-file dir1/ dir2/