|
Что такое архиватор? Ну, это… как бы… файловыжималка! (Из разговора в очереди за "CR")
Конечно, все люди, так или иначе работающие и общающиеся с компьютерами, знают о существовании архиваторов, многие даже пользуются ими. Однако не все представлят себе о богатстве их возможностей и порой ищут другие программы или иные способы решения для целей, которые можно решить, не прибегая к каким-либо излишествам. Нужно всего-навсего знать и уметь пользоваться архиваторами.
Применение сжатия данных
Принципиальная возможность сжатия данных с целью уменьшения их объема имеет три основных практических приложения:
- Резервное копирование и хранение информации. Каждому пользователю время от времени надо делать архивы своих файлов для их хранения на дискетах или других носителях информации. Сжатие данных в данном случае позволяет сократить количество тех же дискет.
- Возможность сжатия данных значительно проще и дешевле, чем покупка нового жесткого диска большего объема. Однако, надо понимать, что работа со сжатыми файлами займет несколько больше времени из-за необходимости их предварительной распаковки и последующего обновления архива.
- Последнее третье применение – в телекоммуникационных сетях. Понятно, что файлы в архивах занимают меньше места и, следовательно, уменьшается время загрузки файлов в сетях. Помимо этого, передача меньшего объема файлов будет стоить дешевле. Кстати, поэтому в современных модемах функция сжатия данных часто реализована аппаратно. Если этого нет, то при наличии соответствующего программного обеспечения может быть получен желаемый эффект.
Простое уплотнение файлов
Простейшая экономия дискового пространства может быть получена за счет изменения способа хранения информации, принятого в DOS. Традиционно DOS делит диски на кластеры, состоящие из фиксированного количества секторов. Размер одного сектора всегда равен 512 байт. В зависимости от специфических характеристик диска, его кластеры могут состоять из 1, 2, 4 и более секторов. Значит, файл будет занимать на диске пространство, в среднем, на половину кластера больше, чем это необходимо. Для хранения же маленьких файлов (размером менее половины кластера, как, например, простые bat-файлы) еще больший объем будет потрачен впустую. Именно поэтому если с диска убрать (например, удалить, перенести на другой диск или заархивировать) некоторое количество маленьких файлов, то свободного места станет больше, чем они занимали.
Эволюция архиваторов
Для получения большей степени сжатия потребуется использование специальных технических приемов, работающих на основе строгих математических алгоритмов. На данный момент существует множество программ, реализующих такие алгоритмы, – это и есть архиваторы. Первые из них могли сжимать только одиночные файлы; следующие поколения архиваторов оперировали уже целыми директориями и структурами директорий. При копировании архива на дискеты вставала проблема с размером самого архива, поэтому в архиваторах была введена функция разбития на части (которые называются томами). При появлении операционных систем, использующих имена файлов длиннее 8/3 символов, потребовалось сжимать и такие файлы. Следствием этого явилось появление следующего поколения программ для сжатия данных. Процесс их совершенствования и увеличения функциональности и представляет перед нашими взорами целую армию архиваторов.
"Зачем же нужна такая куча архиваторов?" – спросите вы. Когда-то, действительно, их применение было вызвано нехваткой места на винчестерах и различных носителях в результате дороговизны последних. В последние же несколько лет цена хранения 1 мегабайта информации упала в несколько раз и до сих пор стремительно падает. К тому же рынок архиваторов был пуст, и многие программисты хотели побыстрей занять пустую нишу, дабы заработать на бутылочку пива и корочку хлеба (хотя та же PKWARE - родоначальница zip-а - фирма со многомиллионным капиталом). Теперь же рынок архиваторов насыщен полностью, совместимость ставится на первое место, надежность работы известных архиваторов ни у кого не вызывает сомнений, а всяческих вспомогательных программ написано огромное количество.
Из всего выше сказанного ясно, что заставить платить за что-то новое кого-либо очень трудно. Но на архиваторных сайтах (о них ниже) каждую неделю появляется что-нибудь новое. По большей части это апгрейды, но бывают и принципиально новые программы. Что же движет программерами всего мира в написании новых архиваторов? Ну, первое, конечно, - это надежда на прибыль (удалось же это Евгению Рошалу – автору RAR-а). Во-вторых, желание повысить секретность пересылки и/или хранения данных за счет архивирования данных неизвестным форматом. А, в третьих, это ведь чистое соревнование, основанное на обычном программистском честолюбии :-). Попробуй-ка, покажи свое умение талантливого программиста и придумай какой-нибудь новый уникальный алгоритм, да и здоровый интерес, как ни как, все не вирусы писать!
На старт, внимание, марш!!!
Соревнования эти, как правило, проводятся в интернете, на сайтах, посвященных данной тематике. Самый известных из них – http://act.by.net, но вот только англоязычный. Существует его русскоязычная версия – http://www.chat.ru/~arctest/. На этих сайтах всегда можно скачать различные версии многих архиваторов, а также оценить результаты тестов, проводимые их авторами. Естественно, нельзя сказать, что тот или иной архиватор "лучший", отсюда сразу и вытекают несколько номинаций: "лучший по сжатию", "по скорости сжатия" и "по скорости разжатия". Но и это еще не все, оказывается, что, например, архиватор, который как семитонный пресс сжимает обычный текст и не имеет себе в этом равных, стоит совсем не на первом (да и не сто двадцать первам) месте, например, по сжатию звуковых (WAV) файликов. Еще нельзя забывать о том, что большинство архиваторов имеет различные градации архивации по степени сжатия/скорости (как минимум, это Fast | Normal | Best). Многие современные программы могут выбирать еще и модель памяти и размер словаря.
На распутье
Итак, взглянув на результаты тестов, люди сведущие могут обновить старые версии или обзавестись чем-нибудь новеньким; люди, равнодушные или абсолютно не интересующиеся этим, вообще отложат газету в сторону (надеемся, таких нет :-) А как показывает опыт, многие из вас впервые услышат названия большинства архиваторов. Ведь их целое море, например: 777, UFA, BIX, LZOP, ACB, IMP, Rkive, Rkuc, UHARC, Arhangel, ACE, EXP и много, много других.
"На каких же остановиться, да и вообще как ими пользоваться?" – прозвучит вопрос. Ну, во-первых, на чем остановиться - решать только вам. Зависит это от многих факторов, в частности, от конкретно поставленной задачи, от требований к совместимости и многому другому. А, во-вторых, сейчас, во время бурной компьютеризации нашей жизни все больше и больше людей, "общаясь" с компьютерами, сталкиваются с различными проблемами. Приведем простой пример. Скажем, требуется принести на дискетке какой-нибудь набранный текст, а на дискету-то он и не входит – следствие, народ учится архивировать. Обучение это, правда, часто заканчивается запоминанием одной команды (или нажатия клавиш). Ну да ладно, научились; в следующий раз уже сам архив получился размером больше дискеты – приходится учить еще одну команду. И так далее, и так далее. Ну, допустим, научились, пришли в гости, а у друзей возьми, да и окажись другой архиватор, и многие "обученные" пользователи, разведя руки, уже ничего сделать-то и не смогут.
Памятка начинающему юзеру
Так что, господа, пора ликвидировать в нашем обществе эту неграмотность. Тем более ничего сложного здесь нет. Для начала давайте решим, чем будем архивировать. Если кто-то из вас скажет: "Far-ом или Дос Навигатором", глубоко ошибется. Дело в том, что эти оболочки (или файловые менеджеры, это уж как хотите) всего-навсего "знают" команды, которые вы и хотите изучить. Перечислять в газете команды всех архиваторов было бы бессмысленно, так что давайте рассмотрим их на примере трех самых популярных и общеизвестных архиваторов – ARJ, PKZIP (PKUNZIP) и RAR. Для начала потребуется наличие самих архиваторов, и, желательно, чтобы они лежали в папке, указанной в переменной окружения PATH в autoexec.bat. Работать будем с командной строкой (строчка такая внизу экрана в Far-е, ну или DN, например), набирая в ней команды.
ARJ
Знаменитый архиватор Роберта Янга. Сейчас фирма-разработчик трудится над более совершенным (JAR), но этот все еще пользуется популярностью.
Формат командной строки для ARJ выглядит так:
ARJ <команда> [-<ключ> [-<ключ>...]] <имя_архива> [<имена_файлов>...]
В треугольных скобках здесь указываются обязательные параметры, а в квадратных, соответственно, необязательные.
Приведем основные команды, которые вам могут понадобиться:
a - Добавить (копировать) файл к аpхиву, или попросту архивировать.
m - Перенести файл в аpхив, уничтожая оригинал.
e - Распаковать файл из аpхива (без директорий).
x - Распаковать со всеми директориями (если их нет, то работает как "е").
t - Пpовеpка целосности аpхива, или попросту тест.
j - Слить аpхивы в аpхив.
d - Удалить файл из аpхива.
Ключей, вообще, великое множество, вот самые необходимые:
r - Включая поддиректории.
g - Использовать пароль.
m - Используя метод 0, 1, 2, 3, 4 (-m0 – без сжатия).
v - Использовать многотомные архивы (архив разбивается на несколько, с расширениями arj, a01, a02, …). (-v1440K – архивирует по частям, равным 1440 килобайт.)
va - Использовать многотомные архивы c автоопределением свободного места.
y - Отвечать "Yes", то бишь "Да", на все запросы от архиватора.
je - Сделать архив самораспаковывающимся (в виде exe-файла).
je1 - Сделать архив самораспаковывающимся, без подтверждения на распаковку (получается меньше по размеру).
n - Только новые файлы (не существующие).
u - Обновить файлы (новые и не существующие).
Примеры:
Добавить файлы и поддиректории: ARJ a –r archive
Разархивировать все файлы с поддиректориями: ARJ x archive
Создать многотомный самораспаковывающийся архив на диске A, автоматически определяя свободное место на каждой дискете:ARJ a -va -je a:archive *.*
Молча распаковать многотомный архив: ARJ x –y –v archive
Если просто набрать в командной строке "ARJ", то на экран будет выведена коротенькая справочка с основными командами, а чтобы получить их полный перечень, надо ввести "ARJ /?".
RAR
От предыдущего отличается тем, что имеет встроенную оболочку для облегчения процесса архивирования. Но командная строка также имеется. Формат командной строки для RAR выглядит так:
RAR <команда> -[ключ 1] –[ключ N] <имя_архива> [файлы...]
Опять приведем основные команды, которые вам могут понадобиться:
a - Добавить файлы в архив.
m - Переместить в архив.
x - Извлечь файлы с путями.
e - Извлечь файлы в текущий каталог (без путей).
s - Преобразовать архив в самораспаковывающийся.
t - Протестировать архив.
Ключей снова много, самые необходимые:
mm - Использовать мультимедиа-сжатие (принудительно).
y - Отвечать "Да" на все запросы.
sfx - Создать самораспаковывающийся архив.
s - Создать непрерывный архив (меньше размером).
s- - Запретить создание непрерывных архивов.
r - Включая подкаталоги.
v - Создавать многотомные архивы с автоопределением размера.
v<N> - Создавать многотомные архивы с размером=<N>*1000 [*1024, *1].
p<пароль> - Установить пароль.
m<0..5> - Метод сжатия (0 - без сжатия...3 - по умолчанию...5 - лучший).
Примеры:
Добавить файлы и поддиректории: RAR a –r archive
Разархивировать все файлы с поддиректориями: RAR x archive
Создать многотомный самораспаковывающийся архив на диске A, автоматически определяя свободное место на каждой дискете: RAR a -v -sfx a:archive *.*
ZIP
Наверное, самый популярный в сети интернет формат. Существует много архиваторов, использующих его, зачастую и сжимая лучше (7zip). Но рассмотрим родоначальников. Во множественном числе потому, что для архивирования и разархивирования используются разные программы – PKZIP и PKUNZIP соответственно.
PKZIP:
Формат командной строки для PKZIP выглядит так:
PKZIP [команды] <имя_архива> [Файлы...]
Где основные команды такие:
-a - Добавить файлы.
-d - Удалить файлы.
-e[x,n,f,s,0] - Использовать различные [eXtra|Normal (default)|Fast|Super fast|0] степени сжатия (по убывающей).
-m - Перенести файлы.
-u - Обновить файлы.
-P - Сохранить структуру поддиректорий.
-r - Сохранять файлы в поддиректориях.
Если команд не указывать, то по умолчанию ставится "-a"
PKUNZIP:
Формат командной строки для PKUNZIP выглядит так:
PKUNZIP [команды] <имя_архива> [Файлы...]
-d - Восстановить/создать структуру директорий, сохраненную в .ZIP.
-e - Распаковать файлы.
-o - Перезаписывать существующие файлы.
-x<тип_фалов> - Исключить из распаковки.
Если команд не указывать, то по умолчанию ставиться "-e"
Примеры:
Добавить файлы и поддиректории: PKZIP -a –P -r archive
Разархивировать все файлы с поддиректориями: PKUNZIP -d archive
Успехов!!!
Я надеюсь, что после изучения этой небольшой памятки многие архиваторы станут использоваться более эффективно. Советую не полениться и заглянуть в полный help каждой интересующей вас программы, да и запоминание пары новых для вас опций ни к чему плохому не приведет. Так что успехов вам и удачи!
|