«Обновляет» zip-файл с опцией -FS изменяет время модификации файла?

У меня есть zip-файл, который я использую в качестве резервной копии для своей работы. Я использую опцию «freshen» ( -FS ) всякий раз, когда я хочу обновить файл резервной копии. Тем не менее, файл показывает дату последней модификации как дату, когда я изначально создавал файл, а не какой-либо из нескольких раз, так как я «освежил» файл. Это нормальное поведение?

One Solution collect form web for “«Обновляет» zip-файл с опцией -FS изменяет время модификации файла?”

У Unix нет даты создания, поэтому при обновлении этих файлов в вашем .zip вы обновляете их в зависимости от даты их модификации, которая в соответствии с обычной zip страницей является нормальным.

выдержка

 The new File Sync option (-FS) is also considered a new mode, though it is similar to update. This mode synchronizes the archive with the files on the OS, only replacing files in the archive if the file time or size of the OS file is different, adding new files, and deleting entries from the archive where there is no matching file. As this mode can delete entries from the archive, consider making a backup copy of the archive. 

пример

Скажем, у нас есть следующие 3 файла:

 $ touch file1 file2 file3 

Мы добавляем их в ZIP-файл.

 $ zip file.zip file{1..3} adding: file1 (stored 0%) adding: file2 (stored 0%) adding: file3 (stored 0%) 

Проходит некоторое время, и file3 обновляется.

 $ touch file3 

Теперь мы обновляем ZIP-файл.

 $ zip -FS file.zip file{1..3} updating: file3 (stored 0%) 

Проверка файла ZIP, который мы видим, время для файлов теперь выглядит так:

 $ unzip -l file.zip Archive: file.zip Length Date Time Name --------- ---------- ----- ---- 0 07-12-2014 02:59 file1 0 07-12-2014 02:59 file2 0 07-12-2014 03:00 file3 --------- ------- 0 3 files 

Если мы создадим временный каталог и распакуем ZIP-файл в:

 $ mkdir temp; cd temp $ unzip ../file.zip Archive: ../file.zip extracting: file1 extracting: file2 extracting: file3 

Содержимое этого каталога выглядит следующим образом:

 $ ls -l total 0 -rw-rw-r--. 1 saml saml 0 Jul 12 02:59 file1 -rw-rw-r--. 1 saml saml 0 Jul 12 02:59 file2 -rw-rw-r--. 1 saml saml 0 Jul 12 03:00 file3 

И если мы используем команду stat чтобы проверить file3 :

 $ stat file3 File: 'file3' Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: fd02h/64770d Inode: 17307675 Links: 1 Access: (0664/-rw-rw-r--) Uid: ( 1000/ saml) Gid: ( 1000/ saml) Context: unconfined_u:object_r:user_home_t:s0 Access: 2014-07-12 03:00:16.000000000 -0400 Modify: 2014-07-12 03:00:16.000000000 -0400 Change: 2014-07-12 03:01:03.447913554 -0400 Birth: - 

ПРИМЕЧАНИЕ. Обратите внимание, что есть временные метки для доступа, изменения и изменения. Команда zip сохраняет время доступа и изменения, когда вы используете ключ -FS .

Рекомендации

  • получить возраст данного файла
  • Как найти дату создания файла?
  • Получить файл / время создания?
  • Извлеките один файл из zip-файла, только зная расширение
  • Список файлов из вложенного zip-файла без лишних
  • Можно ли распаковать zip-файл, содержащий образ диска, а затем сохранить его на SD-карту за один шаг?
  • Как добавить огромный архив в архив и удалить его параллельно
  • Как я могу игнорировать «zip warning: name not match» при использовании команды zip с опцией -d?
  • Распаковка pkgsrc нарушена?
  • Почему параметр -x exclude в zip, по-видимому, не исключает путь?
  • Кодирование zip-файла
  • У вас возникли проблемы с распаковкой нескольких файлов
  • разархивируйте два разных типа расширений файлов
  • Bash, чтобы получить результат передачи rsync и закрепить его как каталог в исходном каталоге
  • Уменьшите размер файла (.jar) в unix
  • Linux и Unix - лучшая ОС в мире.