Есть ли способ разархивировать .zip в папку и синхронизировать содержимое этой папки с содержимым .zip?
Я знаю, что вы можете использовать опцию -u (pdate), которая обновит папку новыми файлами, но этого недостаточно. Мне нужно, чтобы сделать фактическую синхронизацию (удалить файлы, отсутствующие в .zip, и обновить файлы, которые являются более новыми).
Это также должно быть быстрым, так как я буду синхронизировать большие ZIP-файлы. Таким образом, стирание плюс чистая распаковка не вариант.
Я открыт для любого инструмента, который сделает эту работу. Но он должен работать без присмотра из командной строки.
Я сам искал что-то такое, что могло бы иметь такую возможность. Утилита Info-ZIP является бесплатной, основана на командной строке и имеет ключ -FS, который удаляет файлы из архива, которых больше нет в исходной папке, в дополнение к обновлению более новых файлов. И.Е. Синхронизация файлов ZIP. http://www.info-zip.org/ Примечание. Единственная проблема, которая возникает у меня с этой утилитой, заключается в том, что нет возможности явно указать исходную папку в качестве аргументов командной строки. Он использует текущий рабочий каталог в качестве источника. Таким образом, в сценарии вы должны использовать команду CD, чтобы сначала перейти в исходный каталог, а затем инициировать команду ZIP. Например:
источник