Если вам где делать инкрементное резервное копирование, вам нужно будет предоставить 7-zip со списком файлов, измененных (с -i@fileList
), и нужно как-то разработать такой список. At https://superuser.com/a/862394/476076 вы можете найти командную строку unix/cygwin, которая будет использовать подписи md5 для создания списка файлов.
7-операция обновления zip позволяет создать вторичный архив с различиями (в том числе удаленными файлами), произошедшими с тех пор базовый/основной архив. Это правильно названо дифференциальной резервной копией (как указано в самом вопросе).
Я нашел отличную статью на эту тему в WPCTips "дифференциальные резервные копии с 7-zip" (архив). Они рекомендуют либо с помощью программы GUI (Тукан), или используйте этот рецепт для командной строки:
7z u {base archive.7z} {folder to archive} -u- -up0q3r2x2y2z0w2!{differential.7z}
это немного отличается от 7zr u -up0q3r2x2y2z1w2 {archive}.7z {path}
предложенный ArtemGr:
-u-
сообщает, что главный архив не должен будьте изменены
-up0q3r2x2y2z0w2!{differential.7z}
указывает целевой разностный архив и действие, которое необходимо выполнить для каждого файла для каждого условия/состояния: добавить новые или измененные файлы в файловой системе, удалить файлы, которые находятся только в архиве 7zip, игнорировать остальные.
на всякий случай, если вам интересно о специфике этого загадочного p0q3r2x2y2z0w2
<state> | State condition
p | File exists in archive, but is not matched with wildcard. Exists, but is not matched
q | File exists in archive, but doesn't exist on disk.
r | File doesn't exist in archive, but exists on disk.
x | File in archive is newer than the file on disk.
y | File in archive is older than the file on disk.
z | File in archive is same as the file on disk
w | Can not be detected what file is newer (times are the same, sizes are different)
<action> | Description
0 | Ignore file (don't create item in new archive for this file)
1 | Copy file (copy from old archive to new)
2 | Compress (compress file from disk to new archive)
3 | Create Anti-item (item that will delete file or directory during extracting). This feature is supported only in 7z format.