У меня есть две директории, которые являются разными версиями одного и того же программного пакета. Я хотел бы перечислить все файлы / каталоги, которые изменились между ними, а затем скопировать эти различия в новый каталог.
Я пытался различные сценарии с md5sum
и , diff -Nurq
но не смогли получить результат я ищу.
Любые рекомендации?
command-line
Богатые
источник
источник
diff -r
(или варианты) уже дает вам различия. Что вы пытаетесь с ними сделать?Ответы:
Вы должны использовать
rsync
вместо этого. Нечто подобноеrsync -rv $old/ $new/
должно сделать свое дело: это напечатает файлы, которые он собирается скопировать.Запустите с дополнительной
-n
для пробного запуска, прежде чем фактически изменить новый каталог.источник
Лучший инструмент, который я нашел, это использование vim с плагином DirDiff . Если вы используете
vim
иvimdiff
, этот плагин будет легко выучить.Автор описывает это так:
DirDiff похож на использование
vimdiff
для сравнения двух каталогов, а также всех подкаталогов и файлов, содержащихся в них. Я часто использую этот инструмент для сравнения различных веток Subversion, каталогов конфигурации на разных хостах и т. Д.Чтобы посмотреть скриншот, посмотрите блог dedm: http://dedm.livejournal.com/115224.html
источник