ryg

ZIP Mac OS X

Zip - упаковка и сжатие файлов в архив

Синтаксис:

 zip  [-aABcdDeEfFghjklLmoqrRSTuvVwXyz!@$]  [--longoption ...]  [-b path] [-n suffixes] [-t date] [-tt
       date] [zipfile [file ...]]  [-xi list]

Дополнительно

zipcloak
       zipnote
       zipsplit

Замечание: обработка парметров была изменена для поддержки длинных наименований и параметров и некоторы старые команды могут не работать

Описание:

Zip программа для сжатия файлов для Unix, VMS, MSDOS, OS/2, Windows 9x/NT/XP,  Minix,Atari,  Macintosh,  Amiga, и Acorn RISC OS

Аналогична командам Unix tar и compress и совместима с PKZIP (для MS DOS).

Сопутствующая программа unzip распаковывает zip архивы. Zip и unzip могут работать с архивами созданными с помощью PKZIP (до версии 4.6), а PKZIP и PKUNZIP могут работать с архивами созданными в zip (с некоторыми ограничениями связанными с потоковой архивацией, но последние изменения должны были способствовать лучшей совместимости).

Zip версии 3.0 совместима с версией PKZIP 2.04 и поддерживает расширения Zip64 сделанные PKZIP 4.5 позволяющие работать с файлами в 2GB (в некоторых случаях 4GB). Так же zip теперь поддерживает стандарт сжатия bzip2 (при компиляции утилиты необходимо подключить библиотеку bzip2). Необходимо помнить, что PKUNZIP 1.10 не может распаковывать файлы созданные PKZIP 2.04 или zip версии 3. Для них необходимо использовать PKUNZIP 2.04g или unzip 5._p1 (или их более поздние версии)

Большие архивы и Zip64. Zip атоматически использует данное расширение если в архив добавляются файлы размером больше 4GB. Архив будет автоматически перестроен если его размер превысит 4GB или когда количество записей в нем превысит 64K.
Данный стандарт используется также при использование потока данных из канала, в этом случае конечный размер программе неизвестен, однако парметр -fz заставит создать PKZIP 2 совместимый архив. Для распаковки архивов Zip64 необходимо использовать unzip версии 6. и выше (совместимый с PKZIP 4.5)

Архивы потоковых данных и зашифрованные архивы могут быть несовместимы с PKZIP.

Использование

Программа предназначена для упаковки группы файлов для их последующей передачи, либо для сжатия времменно неиспользуемых файлов и экономии места на диске.

Утилита Zip помещает один или несколько сжатых файлов в один архив и туда же заносится информация о них (имя, путь, дата создания, дата последней модификации, защиты, результаты для проверки целостности). Одной командой может быть упакована вся файловая структура. Уровень сжатия для стандартных текстовых файлов сотавляет от 2:1 до 3:1. Zip использует сжатие (deflation), но может сохранять файлы без сжатия. Если подключен метод bzip2, то архиватор может использовать данный метод, заменяя собой стандартный метод. В этом случае zip будет автоматически выбирать наиболее подходящий метод сжатия файлов 

Формат команд:

Стандартная команда имеет вид

 zip options archive inpath inpath ...

Где archive - это новый или существующий файл архива, inpath - путь к упаковываемому файлу или папку (возможно использование масок). Если указанный архив уже существует, то в него будут добвалены файлы указанные в inpath. Если в архиве существуют файлы с таким именем и по тому же пути, то файлы будут заменены. Например, если существует архив abc.zip и в нем находятся файлы abc/file1 и abc/file2 и существует каталог abc c файлами abc/file1 и abc/file3, то выполнение команды

		zip -r abc.zip abc

или еще короче

		zip -r abc.zip abc

Заменит файл abc/file1 в архиве abc.zip и добавит в него файл abc/file3. После данной операции abc.zip будет иметь три файла

  •  abc/file1 -измененный файл
  •  abc/file2 - старый неизмененный файл
  •  abc/file3  - новый файл

-@ список файлов. Если список файлов определен как -@ (не в Mac OS), zip берет список файлов из стандартного ввода и включает их в командную строку. Например:

zip -@ abc

В unix данный вариант может быть очень полезен в сочетании с командой find. например для архивирования всех файлов с расширением .c в текущем каталоге и подкаталогах.

 find . -name "*.[ch]" -print | zip source -@

Командные режимы.

Zip  поддерживает два командных режима внутренний и внешний. Внутренний режим предназначен для работы исключительно внутри архива (удаление и копирование файлов внутри архива), а внешний режим предназначен для добавления, обновления файлов из файловой системы.

add Добавить файл в архив. Если указанного архива не существует, то создать его. Это режим по умолчанию.
-u (update) Обновить существующие файлы в архиве, если они были изменены в файловой системе и добавить новые файлы. Если указанного архива не существует, то создать его.
-f (freshen) Обновить существующие файлы в архиве, если они были изменены в файловой системе, новые файлы не добавлять 
-d (delete) Выбрать указанные файлы в существующем архиве и удалить их
-U (copy) Отобрать указанные файлы в существующем архиве и затем скопировать их в новый архив. 
-FS Данный режим позволяет синхронизировать архив с файлами OS, обновляет файлы в архиве если они отличаются по времени и размеру с файлами в OS, добавляет в архив новые файлы и удаляет из архива файлы, которые были удалены в файловой системе.
-s Разделение архивов. Утилита zip версии 3.0 и старше позволяет создавать архивы состоящие из нескольких файлов
   
   
   

Связанные команды:

tar      - Утилита архивирования
ditto   - Скопировать и сделать резервную копию файлов
bzip2  - Упаковать или распаковать файлы в командной строке терминала
gzip    - Сжатие (архивация) и распаковка файлов

Весь список команд терминала OS X