Перейдя на Linux из Windows, я хотел бы найти альтернативное программное обеспечение для Winmerge или, скорее, изучить инструменты командной строки для сравнения и синхронизации двух папок в Linux. Я был бы признателен, если бы вы сказали мне, как выполнять следующие задачи в командной строке ... (Я изучал diff и rsync, но мне все еще нужна помощь.)
У нас есть две папки: "/ home / user / A" и "/ home / user / B"
Папка A - это место, где хранятся обычные файлы и папки, а папка B - это папка резервной копии, которая служит полным зеркалом папки A. (Пользователь ничего не сохраняет и не изменяет непосредственно в папке B.)
Мои вопросы:
Как перечислить файлы, которые существуют только в папке B? (Например, те, которые были удалены из папки A с момента последней синхронизации.)
Как скопировать файлы, которые существуют только в папке B, обратно в папку A?
Как составить список файлов, которые существуют в обеих папках, но имеют разные временные метки или размеры? (Те, которые были изменены в папке A с момента последней синхронизации. Я хотел бы избежать использования контрольных сумм, потому что есть десятки тысяч файлов, и это сделало бы процесс слишком медленным.)
Как сделать точную копию папки A в папку B? Я имею в виду, скопируйте все из папки A в папку B, которая существует только в папке A, и удалите все из папки B, которая существует только в папке B, но не касаясь файлов, которые являются одинаковыми в обеих папках.