3

У меня есть ежегодные резервные копии всех моих файлов на жестком диске.

Проблема в том, что резервная копия 2007 года содержит файлы, которых не было в 2008 году. И мне нужны обе версии файлов, когда они разные. Поэтому я не могу перезаписать старую версию файла новой.

Мне нужна программа, которая объединяет две структуры папок. Если файл из источника и назначения имеет одинаковое содержимое (контрольная сумма или около того), не копируйте его. Если содержимое отличается, скопируйте его, например, с помощью Filename (1).

Кто-нибудь может дать мне подсказку?

Благодарю вас!

3 ответа3

2

(1) Для Linux вы можете использовать rsync. Если он еще не установлен, загрузите и установите rsync, выполнив:

sudo apt-get install rsync

или же

sudo aptitude install rsync

из командной строки.

Предположим, у вас есть директории 2007 и 2008 в том же подкаталоге, который вы могли бы использовать rsync, например, в этом конкретном каталоге

rsync -rtpogv -clis -b --suffix=new 2007/ 2008/

Это приведет к переименованию тех файлов в каталоге 2008 года, которых нет в 2007 году или имеющих более старую версию в каталоге 2007 года, в file.new

Однако, прежде чем сделать это, вы можете использовать rsync с опцией -n, как это

rsync -rtpogv -clis -b --suffix=new -n 2007/ 2008/ &> rsync.log

и проверьте файл журнала, чтобы увидеть, все ли прошло так, как вы хотели.

(2) Если вы находитесь на окнах, есть инструмент под названием тукан, который мне кажется многообещающим. но я еще не пробовал. http://portableapps.com/de/apps/utilities/toucan

0

Вы можете попробовать использовать WinMerge, если вам нужен инструмент с графическим интерфейсом: http://winmerge.org/

0

Я настоятельно рекомендую синхронизатор файлов Unison по нескольким причинам:

  • Кроссплатформенная, с открытым исходным кодом
  • Вы можете синхронизироваться по локальной файловой системе (например, папка в папку), по TCP (то есть от компьютера к компьютеру)или по SSH.
  • Вы можете синхронизировать между различными платформами (я использую это для синхронизации моих файлов между моим рабочим столом и ноутбуком)

Как только вы настроите профиль синхронизации, Unison обнаружит, какие файлы были изменены в какой папке, а затем предоставит вам интерактивный интерфейс, чтобы определить, какие файлы куда следует перенести. По умолчанию самые последние измененные файлы перезаписывают старые. Unison также использует метод в стиле контрольной суммы, чтобы определить, были ли файлы изменены, или обнаружить дубликаты.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .