Архиваторы командной строки П Л А Н A. Введение. Назначение архиваторов. Особенности архиваторов командной строки. B. Архиваторы упаковщики-компрессоры для MS-DOS. B.1. PkZip/PkUnzip B.2. Arj B.3. Rar C. Архиваторы из мира UNIX С.1. tar C.2. qzip C.3. Compress/Freeze D. Некоторые экзотические архиваторы. A. Введение. Назначение архиваторов. Особенности архиваторов командной строки. П Л А Н Существует большой ряд программ, единственное предназначение которых -- создавать один файл из множества файлов, расположенных в одной или нескольких директориях, и, по-возможности, сделать такой файл компактным. Такие файлы называются архивами, а программы, создающие такие файлы -- архиваторами. A.1. Цели создания архивов. Создание архивов преследует насколько целей: 1. (Главная) Создание на жестком диске абсолютно точной логической структуры файлов и каталогов. Автор хочет подчеркнуть, что сохраняется именно логическа структура данных, а не физическая (дорожки и сектора). Именно это условие позволяет восстановит файлы из архива на любом компьютере, работающем в любой операционной системе, хранить архивы на любом носителе, не опасаясь за целостность и сохранность информации в файлах. 2. Уменьшить размеры файлов, находящихся на жестком диске. Как правило, при создания архивного файла любым архиватором (даже без сжатия), его размер будет меньше размера составляющих его файлов (за счет уменьшения числа неполных блоков на диске). Применение компрессоров изображения сжимаются в среднем на 20%, текстовые файлы -- в два раза, а файлы баз данных -- до пяти раз. 3. С архивными файлами проще осуществить резервное копирование. Согласитесь, что легче скопировать и сохранить: один или несколько файлов. 4. Компрессия широко применяется в Интернет. Из-за удаленности компьютеров и возникающих помехах на линиях связи, там необходима быстрая и точная (с коррекцией) передача информации. Согласитесь, что архивы передавать легче, чем отдельные файлов В Интернет архивы распространены на ftp-серверах и в электронной почте, и практически не встречается в Word Wide Web. 5. Архивирование используется при создании дистрибутивов. При установке программы важно, чтобы пользователь сначала подготовил необходимое программное окружение, зарегистрировался, внес идентификационные данные, и лишь потом получил доступ к исполняемым и конфигурационным файлам. Это проще всего сделать архиватором, встроенным в программу установки. 6. И т.д. A.2. Классификация архиваторов. Архиваторы делятся на упаковщики и компрессоры. Программы-упаковщики создают один большой файл из нескольких файлов и каталогов, а компрессоры сжимают этот файл в размерах. В операционных системах MS-DOS и Windows получили распространение универсальные упаковщики-компрессоры, в которых обе функции осуществляются в одной программе. Для архивации и разархивации может использоваться как одна (преимущественно), так и две разные программы. Это условие указывается ниже особо. Изначально появились архиваторы командной строки. Их общий индекс следующий: <архиватор> <команды> [{<опции>}] <файл_архива> {<список_файлов>} Как правило, набирать и запоминать такие конструкции сложно, поэтому появились оболочки с графическим интерфейсом, отображающие архивные файлы в виде директорий. Такие оболочки встраиваются в менеджеры программ и файлов. К архивным оболочкам относятся: Shez, WinRar, WinZip, PowerArchiver и т.д. Но для правильного использования оболочки к ней все равно должен подключатьс архиватор командной строки. На них мы и остановимся по-подробнее. A.3. Синтаксис вызова архиваторов командной строки. Их опции и команды. Еще раз повторим синтаксис вызова программ-архиваторов из командной строки операционной системы: [<путь_к_архиватору>\]<архиватор> <команда> [{<опции>}] <имя_файла_архива>[.<его_расширение>] {{<список_файлов>}] где: * <путь_к_архиватору> -- полный путь к папке, содержащей программу-архиватор; * <архиватор> -- имя файла-архиватора; * <команда> -- команда архиватору, задающая действие, которое он должен выполнить; * <опции> -- одна или несколько необязательных опций, дополняющих команду архиватору; * <имя_файла_архива> -- обязательный параметр, определяющий файл-архив, с которым работает пользователь; * <его_расширение> -- необязательный параметр, указывающий расширение архивного файла. Если оно пропущено, задается расширение по-умолчанию; * необязательные параметры, задающие имена файлов, подлежащих архивации-разархивации. Если параметр пропущен, архиватор сам определяет, какие файлы ему задействовать. Вместо имен файлов можно использовать шаблоны. A.4. Основные команды архиваторов. Смотри таблицу A.4.I. A.5. Основные опции архиваторов. Смотри таблицу A.4.II. A.6. Резюме. Здесь перечислены главные опции, которые применяются во всех архиваторах. О других, специфических опциях и командах архиваторов смотри с помощью опции -? . B. Архиваторы командной строки MS-DOS Программы-архиваторы под DOS позволяют, за счет применения специальных методов "упаковки" информации на диске, создавать копии файлов меньшего размера и объединять несколько файлов в один файл-архив. Они работают по принципу: "Все в одном", то есть одновременно и упаковывают файлы в архив, и сжимают их. Архиваторы командной строки DOS работают и на системах Windows, однако при этом не сохраняется информация о длинных именах файлов. Для сохранения этой информации используйте версии архиваторов для платформы Win32. Но при этом Вы не сможете разархивировать архивы в MS-DOS! Среди архиваторов командной строки DOS наибольшее распространение получили архиваторы PkZip/PkUnzip (создают и распаковывают архивы с расширением *.ZIP), Arj (с расширением *.ARJ для основного архива и *.A01, *.A02 для последующих томов) и Rar (с расширением *.RAR для основного архива и *.R00, *.R01 дл последующих томов). В этой главе мы рассмотрим их по-подробнее. B.1. Программы обслуживания *.ZIP-файлов. К этим программам относят: * PkZip.exe -- для помещения файлов в архив; * PkUnzip.exe -- программа для извлечения файлов из архива; * PkZipFix.exe -- программа восстановления поврежденного архивного файла; * Zip2Exe.exe -- создание "саморазархивирующихся" файлов. Эти программы не имеют команд в привычном виде. Вместо них задаются опции. Они пишутся через тире или через наклонную черту. Допускается указывать несколько опций. B.1.1. Команды и опции программ обслуживания ZIP-файлов. См. Таблицу B.1.I. Опции программ и выполняемых действия. B.2. Программы обслуживания *.ARJ-файлов. К этим программам относят архиваторы Arj различных версий. Все версии архиваторов Arj совместимы "снизу вверх", то есть архиватор более старшей модели может читать файлы архиватора младшей модели. К достоинствам архиватора Arj относятся: 1) Довольно высокая и быстрая компрессия данных для своего времени. К сожалению, с ростом мощностей процессоров и появлением новых архиваторов под них,по этому параметру Arj стал значительно отставать от своих конкурентов. 2) Возможность создания многотомных архивов (этой опции нет у архиваторов *.ZIP ). 3) Использование одной программы как для архивации, так и для разархивации данных. Эти преимущества позволили архиватору ARJ стать самым популярным и востребованным среди архиваторов для платформы MS-DOS. К сожалению, как уже говорилось выше, перенос этого архиватора на другие платформы получилс неудачным. B.2.1. Команды и опции программы Arj. См. Таблицу B.2.I. B.3. Программы обслуживания *.RAR-файлов. К программам обслуживания архивов с расширением *.RAR (а также *.R00, *.R01, *.R02 и т.д.) относят программы RAR, WinRAR, UnRar и другие. RAR -- сравнительно молодой формат: первый архиватор RAR появился в 1992 году. С тех пор выпущено уже множество версий, последняя из них 3.40. К достоинствам программы RAR можно отнести: 1) Высокая степень сжатия (особенно программных файлов и архивов универсального содержания); 2) Достаточно высокая скорость сжатия файлов. 3) Поддержка верхней памяти и команду, ускоряющих архивацию). 4) Возможность создания многотомных архивов. 5) Использование одного файла как для архивации, так и для разархивации. 6) Возможность работы как в командной строке. так и в виде оболочки. К недостаткам этого архиватора следует отнести: 1) Повышенная требовательность к ресурсам компьютера при своей работе; 2) Довольно ограниченная совместимость версий архиваторов Это значит, что если архив создан одной версией архиватора RAR, то, вообще говоря, не факт, что он раскроется другой версией архиватора RAR. 3) Все версии архиваторов RAR являются коммерческими продуктами, и их использование без приобретения лицензии является незаконным. 4) Этот формат архивов пока не получил широкого распространения у UNIX и Linux-сообщества (вероятно, из-за его коммерческой направленности). B.3.1. Запуск программы RAR для платформы MS-DOS. Изначально программа RAR поддерживает работу в двух режимах: в режиме собственной оболочки и в режиме командной строки. Для запуска программы RAR в режиме оболочки необходимо набрать: RAR или RAR <имя_файла>.rar где <имя_файла> имя существующего файла-архива *.RAR Для запуска программы RAR в режиме командной строки не обходимо набрать: RAR <команда> [{-<опции>}] <имя_файла>.rar <имена_архивируемых_файлов> Иными словами говоря, если для архива RAR указана команда, он запускается в командном режиме, а если команда опущена, программа запускается в режиме оболочки. B.3.2. Команды и опции командного режима программы-архиватора RaR. См. таблицу B.3.I. B.3.3. Описание оболочки программы-архиватора RaR Материал пока не готов.