Какой метод архивации (tar, zip, 7z и т. д.) позволяет сохранять даты изменения папок на macOS?

Какой метод архивации (tar, zip, 7z и т. д.) позволяет сохранять даты изменения папок на macOS?

В настоящее время у меня на жестком диске есть каталог, TopFolderсодержащий, скажем, 3 подпапки: Folder1, Folder2, и Folder3.

Когда я нахожусь в каталоге верхнего уровня жесткого диска и делаю:

tar cf TopFolder.tar Folder1 Folder2 Folder3

он создает tarфайл, который при извлечении делает измененные даты Folder1, Folder2, и Folder3равными времени их извлечения.

Я заметил, что zipу него нет этой проблемы, и он сохраняет даты изменения Folder1, Folder2, и Folder3. Как правило, zipработает медленнее из-за сжатия. Есть ли хороший способ архивировать папки, если мне нужно, чтобы даты изменения оставались как есть, не полагаясь на zip? Есть ли в 7z метод, который работает так же быстро, как и tarбез сжатия? Спасибо!

Мой tar — bsdtar 3.3.2 на Mac.

решение1

он создает tar-файл, который при извлечении устанавливает даты изменения Folder1, Folder2 и Folder3 равными времени их извлечения.

Вы tarработаете своеобразно или, может быть, вы что-то упускаете из виду (например, вы сразу добавляете новые файлы в распакованные каталоги), потому что tarпо умолчанию восстанавливает даты модификации каталогов. Я только что дважды проверил это с помощью tar версии 1.32 в Fedora 32.

Есть ли метод в 7z, который был бы таким же быстрым, как tar без сжатия? Спасибо!

Вам не нужен 7z, но вы всегда можете использовать метод сжатия хранилища в 7z, например

7za a -mx=0 -ms=off -mhc=off archive.7z <files>

Связанный контент