Добро пожаловать в руководство по командной строке HaoZip!

HaoZip - это мощное средство для создания и распаковки архивов.

Поддерживает сжатие в форматы 7z, ZIP, TAR и распаковку практически всех популярных форматов сжатия. Среди них: RAR, ISO, UDF, ACE, UUE, CAB, Bzip2, ARJ, JAR, LZH, RPM, Z, LZMA, NSIS, DEB, MSI, CPIO, XAR и другие (больше 40).

В программе имеется встроенный просмотрщик графических файлов не выходя из архива, имеется возможность преобразования одного формата архива в другой, подсчет контрольной суммы (CRC32, MD5) файла, групповое переименование файлов, также добавлена возможность поиска троянов и других вредоносных программ с помощью онлайн- антивируса. Есть возможность монтировать образы дисков.

Этот справочный документ включает следующее:

  • Руководство пользователя по командной строке: Синтаксис, Командная строка

О других возможностях архиватора можно узнать из:

  • - Онлайн справки
  • - Истории версий

Copyright © 2013 HaoZip Software Studio

Главная страница: www.haozip.com

Техническая поддержка: haozip@gmail.com

Форум: http://bbs.2345.com/forumdisplay.php?fid=8

Русский форум: Ru-Board.com

Особенности Ru-Board сборки


Особенности Сборки HaoZip Ru-Board Edition

В комплекте:

  • русский (от Ru-Board), украинский (от Vladimir_02), английский языки
  • русский (от Ru-Board), украинский (от Vladimir_02), английский SFX модули
  • темы (а-ля WinRar от YSF)
  • после установки создаются ярлыки на Рабочий стол и в меню Пуск
  • программа корректно интегрируется в систему
  • деинсталляция через Установка/Удаление программ

Два типа установки:

- Полная - ставится 7 тем (WinRar Elegant - установлена по умолчанию, CartonBox by YSF, WinRAR Smile, Aero, Winrar Jrx32, WinRar by YSF + родная хаозиповская);

- Выборочная - ставятся темы (WinRar Elegant, CartonBox by YSF, WinRAR Smile + родная хаозиповская), остальные по выбору:

* Дополнительно можно установить темы (Aero, Winrar Jrx32, WinRar by YSF)

* Дополнительные инструменты (Virtual CD, Пакетное переименование, Пакетная замена строк, Подсчет контрольной суммы)

В конце установки пользователь выбирает чекбоксами: Обновить HaoZip сохранив настройки пользователя (т.е. не будут перезаписаны файлы HaoZip.hzc, HaoZip.hzs, HaoZip.ust в папке HaoZip\config\), Сделать архиватором по умолчанию, Установить разные иконки архивов, Добавить ярлык на Рабочий стол, Ассоциировать встроенный просмотрщик со всеми файлами изображений

**** Еще если положить рядом с инсталлятором файлы HaoZip.hzc, HaoZip.hzs, HaoZip.ust, HaoZipLang.ini, то будут применены "СВОИ" настройки (темы, скины, контекстные меню, язык интерфейса)

**** Если положить рядом с инсталлятором файл HaoZip.reg - будут установлены ВАШИ ассоциации

Как подготовить HaoZip.reg ?

  • Скачиваем AssTools
  • Высталяем в Хаозипе нужные ассоциации
  • Запускаем AssView, указываем полный путь к HaoZip.exe
  • Кн. Просмотр Асооциаций и далее Сохранить в REG файл
  • Полученный файл HaoZip.reg (именно так чтоб назывался!!!) положить рядом с инсталлятором

Внимание! Инсталлятор запускать со снятой галкой Ассоциировать Haozip со всеми архивами

**** Еще (при выборе чекбокса "Установить разные иконки архивов") создается Ярлык в меню Пуск - "HaoZip - Установить разные иконки архивов", запустив его, в любое время можно применить для каждого архива свою иконку.

(Замечено: если во время установки выбрано "Установить разные иконки архивов" - они применяются,
но если вы заходите в настройки HaoZip и что-то там меняете или просто выходите нажимая ОК,
то разные иконки будут сброшены (т.е. будет использоваться ОДНА иконка для ВСЕХ типов архивов)

Выход (их несколько):

  1. Запустить из главного меню Пуск ярлык "HaoZip - установить разные иконки архивов" (и так при каждом изменении настроек)

  2. Использовать тему CartonBox by YSF - там эти разные иконки зашиты в тему

  3. Если хотите привязать разные иконки к другой понравившейся теме, то просто скопируйте папку
c:\Program Files\HaoZip\Config\Themes\CartonBox by YSF\format\ в папку с применяемой темой
(напр. сюда: c:\Program Files\HaoZip\Config\Themes\WinRar Elegant by YSF\))

Для установки в тихом режиме можно использовать ключ

/SILENT, /VERYSILENT

Например:

HaoZip.exe /VERYSILENT

Про остальные ключи инсталлятора читаем здесь

Условия распространения Сборки.

- Распространяется по принципу "как есть" (никакой ответственности за причиненный ущерб от использования ее автор (-ы) не несет).

- Вы можете свободно распространять Сборку на своих информационных ресурсах при обязательном указании Автора (-ов) и, при возможности, ссылку на страницу

- Если по каким-то причинам Вам нужно доработать (усовершенствовать, внести изменения) Перевод или саму Сборку, это разрешено исключительно при условии соблюдения авторских прав родительского Перевода и Сборки.

- Нельзя полностью присваивать авторство Сборки (или любым ее компонентам) после внесения любых изменений в нее, без указания Автора (ов) Сборки, которые работали до Вас над созданием / доработкой.

Над Сборкой и Переводом работали: пользователи Ru-Board (starichok, omamont, AuronSV, Shunja777, immortal223, OlegSh777, YSF, Tilks, Vladimir_02)

P.S. со всеми предложениями и пожеланиями обращайтесь в тему на форуме


Особенности Сборки HaoZip Ru-Board Edition

Параметры командной строки инсталлятора

/SILENT, /VERYSILENT

Установка в ускоренном или очень ускоренном режиме. При установке в ускоренном режиме окно мастера и фоновое окно мастера не отображаются, отображается только окно прогресса. При очень ускоренной установке окно прогресса тоже не отображается. Остальная установка проходит как обычно - отображаются сообщения об ошибках в ходе установки, страница приветствия (если ее отображение не отменено директивой DisableStartupPrompt или параметром '/SP-' командной строки).

 /DIR="x:\dirname"

Меняет имя папки, заданное по умолчанию, на странице Выбор папки назначения. Должен быть задан полный путь.

/COMPONENTS="имена компонентов, разделенные запятой"

Меняет выбраные по умолчанию компоненты. В этом случае параметр командной строки указывает инсталлятору менять тип установки на Выборочный.

Список имен Компонентов:

  • customs\Aero - установка темы AeroBlue
  • customs\WinRAR_Jr_32 - установка темы Winrar Jr 32x32
  • customs\WinRar_YSF - установка темы WinRar by YSF
  • *Instrum - установить все дополнительные инструменты
  • Instrum\HaoZipCD - установка инструмента Виртуальный CD
  • Instrum\HaoZipMd5 - установка Подсчет контрольной суммы
  • Instrum\HaoZipRename - установка Пакетное переименование
  • Instrum\HaoZipReplace - установка Пакетная замена строк

Пример:
"HaoZip.exe" /VERYSILENT /COMPONENTS="customs\WinRAR_Jr_32, customs\WinRar_YSF"
- установить архиватор и темы Winrar Jr 32x32, WinRar by YSF

 "HaoZip.exe" /VERYSILENT /COMPONENTS="*Instrum, customs\WinRAR_Jr_32, customs\WinRar_YSF"
- установить все дополнительные инструменты и темы Winrar Jr 32x32 и WinRar by YSF

Список выбранных задач.

/TASKS="задачи разделенные через запятую"

Если задача имеет префикс "!" - задача не будет выполняться.

Список имен Задач:

  • updates - Сохранение настроек Пользователя. Использовать при обновлении уже установленной программы
  • Shortcut - Добавление ярлыков на Рабочий стол и в меню Пуск
  • Def_arch - Ассоциирование со всеми архивами
  • icons - Разные иконки архивов
  • Imagine - Ассоциировать Просмотрщик Imagine с файлами изображений

Пример:

"HaoZip.exe" /VERYSILENT /COMPONENTS="customs\Aero" /TASKS="icons, Shortcut, updates"

- Сохранить настройки пользователя, установить тему AeroBlue, сделать разные иконки архивов и добавить ярлыки.

"HaoZip.exe" /VERYSILENT /TASKS="icons, def_arch"
- полная установка, иконки архивов, архиватор по умолчанию


Команды Командной строки

Команда - первый параметр, не ключ, в командной строке.

Названия команд не чувствительны к регистру.

См. также синтаксис Командной строки для подробностей об использовании командной строки.

Справочник команд

Команда | Описание
a | Add
b | Benchmark
d | Delete
e | Extract
l | List
t | Test
u | Update
x | eXtract with full paths


Синтаксис Командной строки

HaoZipC <command> [<switch>...] <base_archive_name> [<arguments>...]

<arguments> ::= <switch> | <wildcard> | <filename> | <list_file>
<switch>::= <switch_symbol><switch_characters>[<option>]
<switch_symbol> ::= '/' | '-'
<list_file> ::= @{filename}

Выражения в квадратных скобках (между '[' и ']') являются дополнительными.

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

Выражения (Expression)

expression1 | expression2 | ... | expressionN

средства, любое (но только одно) из этих выражений должно быть определено.

Команды (command) и ключи (switch) могут быть введены заглавными или строчными буквами.

Команда - первый параметр, не ключ, в командной строке.

"base_archive_name" должен быть первым именем файла на командной строке после команды.

Ключи и другие имена файлов могут быть в любом порядке.

Подстановочные знаки или имена файла с пробелами должны быть заключены в кавычки:

    "Dir\Program files\*"
    Dir\"Program files"\*

Опции ключей могут быть объединены, чтобы сократить длину командной строки. Однако некоторые опции ключа берут дополнительные параметры строки и поэтому, должны быть последней опцией в объединенной строке маркера параметра, потому что, HaoZip воспринимает остальная часть вводов маркера параметра как дополнительный параметр.

HaoZip использует wild имя, соответствующее подобному в Windows 95:

  • '*' означает последовательность произвольных символов.
  • '?' означает любой символ.

HaoZip не использует системный синтаксический анализатор подстановочных знаков, и HaoZip не следует тому архаичному правилу, по которому *.* означает любой файл. HaoZip обрабатывает *.* как соответствие имени любого файла, который имеет расширение. Чтобы обрабатывать все файлы, Вы должны использовать подстановочные знаки *.

Примеры:

*.txt | означает все файлы с расширением ".txt"
?a* | означает все файлы со вторым символом "a"
*1* | означает все имена, который содержит символ "1"
*.*.* | означает все имена, которые содержат по крайней мере два символа "."

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

Слеш ('\') в конце пути означает каталог. Без слеша ('\') в конце пути, путь может относиться и к файлу и к каталогу.

Файл-список

Вы можете поставлять одно или более имен файлов или подстановочные знаки для специальных файл-списков (файлы, содержащие списки файлов). Имена файлов в таком файл-списке должны быть разделены символом(ами) перевода строки.

Для файл-списка HaoZip использует, по умолчанию кодировку UTF-8.

Множественные файл-списки поддержаны.

Например, если файл "listfile.txt" содержит следующее:

    My programs\*.cpp
    Src\*.cpp

тогда команда

    HaoZipC a -tzip archive.zip @listfile.txt

добавляет к архиву "archive.zip" все "*.cpp" файлы из каталогов "My programs" и "Src".

Короткие и длинные имена файлов

HaoZip поддерживает короткие имена файлов (как FILENA~1.TXT) в некоторых случаях. Однако, строго рекомендуют использовать только реальные (длинные) имена файлов.


Ключи Командной строки

Синтаксис

<switch>::= <switch_symbol><switch_characters>[<option>]
<switch_symbol> ::= '/' | '-'

В командной строке, ключ состоит из спецификатора ключа, черточки (-) или косой черты (/), сопровождаемой именем ключа. Имена ключей не могут быть сокращены.

Некоторые ключи берут параметр, определенный после имени ключа. Никакие пробелы или табуляции не допускаются в пределах спецификации ключа. Имена ключей не чувствительны к регистру, но параметры могут быть чувствительными к регистру.

Ключ может использоваться в любом месте в командной строке.

См. также Синтаксис Командной строки для подробностей об использовании командной строки.

Справочник ключей

Ключ | Описание
-- | Отключить синтаксический анализ
-ai | Включить имена файлов архива
-an | Отключить синтаксический анализ archive_name
-ao | Метод перезаписи
-ax | Исключать имена файлов архива
-i | Включить имена файлов
-m | Установить метод компрессии
-o | Установить каталог-адресат
-p | Установить пароль
-r | Рекурсия подкаталогов
-scc | Установить кодировку ввода/вывода в консоли
-scs | Установить кодировку для списка файлов
-seml | Переслать архив по почте
-slp | Установить режим больших страниц
-slt | Показ технической информации
-sfx | Создать самораспаковівающийся SFX архив
-si | Читать данные из stdin
-so | Запись данных в stdout
-ssc | Режим чувствительности к регистру
-ssw | Упаковать файлы открытые для записи
-t | Установить тип архива
-u | Параметры обновления
-v | Создать тома
-w | Установить рабочий каталог
-x | Исключить имена файлов
-y | Отвечать Да на все вопросы


-ax (Исключить из архива имена файлов) ключ

-ax (Exclude archive filenames) ключ

Определяет архивы, которые будут исключены из операции.

Множественные исключающие ключи архива, поддержаны.

Синтаксис

-ax[<recurse_type>]<file_ref>

<recurse_type> ::= r[- | 0]
<file_ref> ::= @{listfile} | !{wildcard}

См. описание ключа -xi (Include archive filenames) для информации о параметрах опции.

Пример

HaoZipC t -an -ai!*.7z -ax!a*.7z

тестирует все *.7z архивы, кроме a*.7z архивов.

Команды, которые могут использоваться с этим ключом

e (Extract), l (List), t (Test), x (Extract with full paths)

См. также

Ключи: -ai (Include archives) -an (Disable parsing of archive_name)


-ai (Включить в архив имена файлов) ключ

-ai (Include archive filenames) ключ

Определяет дополнительно включаемые имена файлов архива и подстановочные знаки.

Множественные включающие ключи, поддержаны.

Синтаксис

-ai[<recurse_type>]<file_ref>

<recurse_type> ::= r[- | 0]
<file_ref> ::= @{listfile} | !{wildcard}

Параметры

<recurse_type>

Определяет, как подстановочные знаки и имена файла, определенные в этом ключе должны использоваться. Если эта опция не будет назначена, то рекурсия использоваться не будет. Для подробностей см. описание ключа -r (Recurse).

<recurse_type> ::= r[- | 0]
<file_ref>

Определяет имена файлов и подстановочные знаки или файл-список, который определяет обрабатываемые файлы.

<file_ref> ::= @{listfile} | !{wildcard}
Опция | Описание
{listfile} | Определяет имя файл-списка. См. описание Файл-список.
{wildcard} | Определяет подстановочные знаки или имя файла.

Пример

HaoZipC t -an -air!*.7z

тестирует *.7z архивы в текущем каталоге и все его подкаталоги.

Команды, которые могут использоваться с этим ключом

a (Add), d (Delete), e (Extract), l (List), t (Test), u (Update), x (Extract with full paths)

См. также

Ключи: -ax (Exclude archives) -an (Disable parsing of archive_name)


-an (Отключить синтаксический анализ archive_name) ключ

-an (Disable parsing of archive_name) ключ

Отключает синтаксический анализ поля archive_name в командной строке. Этот ключ должен использоваться с ключом -ai (Include archives). Если Вы используете файл-список для ваших архивов, Вы определяете его с ключом -ai, таким образом, Вы должны отключить синтаксический анализ поля archive_name командной строки.

Синтаксис

-an

Пример

HaoZipC t -an -ai!*.7z -ax!a*.7z

тестирует все *.7z архивы, кроме a*.7z архивов.

Команды, которые могут использоваться с этим ключом

e (Extract), l (List), t (Test), x (Extract with full paths)

См. также

Ключи: -ai (Include archives) -ax (Exclude archives)


-seml (Переслать архив по почте) ключ

-seml (Send archive by email) ключ

Посылает архив по электронной почте.

Синтаксис

-seml[.]
[.]
Заставляет архив быть удаленным после присоединения его копии к сообщению электронной почты.

Пример

HaoZipC a archive.7z -seml a.txt

упаковывает файл a.txt и посылает его в виде archive.7z, используя электронную почту.

Команды, которые могут использоваться с этим ключом

a (Add), u (Update)


-x (Исключить имена файлов) ключ

-x (Exclude filenames) ключ

Определяет, какие имена файлов или имена с подстановочными знаками должны быть исключены из операции.

Множественные исключающие ключи, поддержаны.

Синтаксис

-x[<recurse_type>]<file_ref>

<recurse_type> ::= r[- | 0]
<file_ref> ::= @{listfile} | !{wildcard}

См. описание ключа -i (Include) для информации о параметрах опции.

Пример

HaoZipC a -tzip archive.zip *.txt -x!temp.*

добавляет к архиву archive.zip все *.txt файлы, кроме temp.* файлов.

Команды, которые могут использоваться с этим ключом

a (Add), d (Delete), e (Extract), l (List), t (Test), u (Update), x (Extract with full paths)

См. также

Ключи: -r (Recurse), -i (Include)


-i (Включить имена файлов) ключ

-i (Include filenames) ключ

Определяет дополнительно включаемые имена файлов и подстановочные знаки.

Множественные включающие ключи, поддержаны.

Синтаксис

-i[<recurse_type>]<file_ref>

<recurse_type> ::= r[- | 0]
<file_ref> ::= @{listfile} | !{wildcard}

Параметры

<recurse_type>

Определяет, как подстановочные знаки и имена файлов, определенные в этом ключе должны использоваться. Если эта опция не будет назначена, тогда, будет использоваться назначенное глобальное значение, ключа -r (Recurse). Для подробностей см. описание ключа -r (Recurse) .

<recurse_type> ::= r[- | 0]
<file_ref>

Определяет имена файлов и подстановочные знаки или файл-список, для файлов, которые будут обработаны.

<file_ref> ::= @{listfile} | !{wildcard}
Опция | Описание
{listfile} | Определяет имя файл-списка. См. описание Файл-список.
{wildcard} | Определяет подстановочные знаки или имя файла.

Пример

HaoZipC a -tzip src.zip *.txt -ir!DIR1\*.cpp

добавляет в архив src.zip все *.txt файлы из текущего каталога и все *.cpp файлы из каталога DIR1 и из всех его подкаталогов.

Команды, которые могут использоваться с этим ключом

a (Add), d (Delete), e (Extract), l (List), t (Test), u (Update), x (Extract with full paths)

См. также

Ключи: -r (Recurse), -x (Exclude)


-slp (Установить режим больших страниц) ключ

-slp (Set Large Pages mode) ключ

Устанавливает режим больших страниц.

Синтаксис

-slp[-]

Ключ | Описание
-slp | Позволяет режим больших страниц.
-slp- | Отключает режим больших страниц. Эта опция - по умолчанию для всех команд.

Режим больших страниц увеличивает скорость сжатия. Однако, есть пауза в начале сжатия, в то время когда HaoZip распределяет большие страницы в памяти. Если HaoZip не может разместить большие страницы, он размещает обычные маленькие страницы. Кроме того, Диспетчер задач не показывает реальное использование памяти программами, если HaoZip используют большие страницы. Эта особенность работает только на Windows 2003 / XP x64. Также Вы должны иметь права администратора для вашей системы. Рекомендованный размер оперативной памяти для этой особенности - 1 Гб или больше. Чтобы установить эту особенность, Вы должны запустить HaoZip Менеджер файлов, по крайней мере, один раз, закрыть его и перезагрузить систему.

Ваша система может зависнуть на несколько секунд при запуске сжатия, если Вы используете режим -slp. Таким образом не рекомендуют использовать режим -slp, для сжатия небольших объемов данных (менее 100 Мб).

Пример

HaoZipC a archive.7z -slp a.iso

упаковывает файл a.iso с включенным режимом больших страниц.


-slt (Показывать техническую информацию) ключ

-slt (Show technical information) ключ

Устанавливает технический режим для команды l (List).

Синтаксис

-slt

Пример

HaoZipC l -slt archive.7z

показывает подробную техническую информацию о файлах в archive.7z.

Команды, которые могут использоваться с этим ключом

l (List)


-m (Установить метод сжатия) ключ

-m (Set compression Method) ключ

Определяет метод сжатия.

Синтаксис

-m<method_parameters>

Формат для этого ключа зависит от типа архива.

  • Zip
  • GZip
  • BZip2
  • 7z
  • XZ

Zip

Параметр | Значение по умолчанию | Описание
x=[0 | 1 | 3 | 5 | 7 | 9 ] | 5 | Устанавливает уровень сжатия.
m={MethodID} | Deflate | Устанавливает метод: Copy, Deflate, Deflate64, BZip2, LZMA.
fb={NumFastBytes} | 32 | Устанавливает число быстрых байтов для Deflate кодера.
pass={NumPasses} | 1 | Устанавливает число проходов для Deflate кодера.
d={Size}[b|k|m] | 900000 | Устанавливает размер словаря для BZip2
mt=[off | on | {N}] | on | Устанавливает режим многопоточности.
em={EncryptionMethodID} | ZipCrypto | Устанавливает метод шифрования: ZipCrypto, AES128, AES192, AES256
tc=[off | on] | off | Сохраняет "штамп времени" (timestamps) создания файла.
cl=[off | on] | off | HaoZip всегда использует локальную кодовую страницу для имен файлов.
cu=[off | on] | off | HaoZip использует UTF-8 для имен файлов, которые содержат не-ASCII символы.

По умолчанию (если cl и cu ключи не определены), HaoZip использует UTF-8 кодирование только для имен файлов, которые содержат символы, неподдерживаемые локальной кодовой страницей.

x=[0 | 1 | 3 | 5 | 7 | 9 ]

Устанавливает уровень сжатия. x=0 означает режим Copy (никакого сжатия).

Установки Deflate / Deflate64:

Уровень | Число быстрых байтов | Число проходов | Описание
1 | 32 | 1 | Самый быстрый
3 | Быстрый
5 | Нормальный
7 | 64 | 3 | Максимальный
9 | 128 | 10 | Ультра

x=1 и x=3 с Deflate методом устанавливают быстрый режим для сжатия.

Установки BZip2:

Уровень | Словарь | Число проходов | Описание
1 | 100000 | 1 | Самый быстрый
3 | 500000 | Быстрый
5 | 900000 | Нормальный
7 | 2 | Максимальный
9 | 7 | Ультра
fb={NumFastBytes}

Установка числа быстрых байтов для Deflate/Deflate64 кодера. Оно может быть в диапазоне от 3 до 258 (257 для Deflate64). Обычно большее число дает немного лучшую степень сжатия и более медленный процесс сжатия. Большие числа параметра быстрых байтов может значительно увеличить степень сжатия в случае, когда файлы содержат длинные идентичные последовательности байтов.

pass={NumPasses}

Установка числа проходов для Deflate кодера. Оно может быть в диапазоне от 1 до 15 для Deflate и от 1 до 10 для BZip2. Обычно большее число дает немного лучшую степень сжатия и более медленный процесс сжатия.

d={Size}[b|k|m]

Установка размера словаря для BZip2. Вы должны определить размер в байтах, килобайтах, или Мегабайтах. Максимальное значение для размера словаря - 900000б. Если Вы не определите никакого символа из [b|k|m], то размер словаря будет вычислен как Размер_словаря = 2^Size байт.

mt=[off | on | {N}]

Установка режима многопоточности. Если Вы имеете многопроцессорную или многоядерную систему, Вы можете получить увеличение скорости, с этим ключом. Эта опция эффективна только для сжатия (с любым методом) и распаковки с BZip2 потоками. Каждый поток в режиме многопоточности использует 32 Мб оперативной памяти для буферизации. Если Вы определяете {N}, HaoZip пробуют использовать N потоков.

GZip

GZip использует те же самые параметры как Zip, но GZip сжимает только с методом Deflate. Таким образом GZip поддерживает только следующие параметры: x, fb, pass.

BZip2

Параметр | Значение по умолчанию | Описание
x=[1 | 3 | 5 | 7 | 9 ] | 5 | Устанавливает уровень сжатия.
pass={NumPasses} | 1 | Устанавливает число проходов для Bzip2 кодера.
d={Size}[b|k|m] | 900000 | Устанавливает размер словаря для BZip2
mt=[off | on | {N}] | on | Устанавливает режим многопоточности.
x=[1 | 3 | 5 | 7 | 9 ]

Установки уровня сжатия

Уровень | Словарь | Число проходов | Описание
1 | 100000 | 1 | Скоростной
3 | 500000 | Быстрый
5 | 900000 | Нормальный
7 | 2 | Максимальный
9 | 7 | Ультра
d={Size}[b|k|m]

Установка размера словаря для BZip2. Вы должны определить размер в байтах, килобайтах, или Мегабайтах. Максимальное значение для размера словаря - 900000б. Если Вы не определите никакого символа из [b|k|m], то размер словаря будет вычислен как Размер_словаря = 2^Size байт.

pass={NumPasses}

Установка числа проходов. Оно может быть в диапазоне от 1 до 10. Значение по умолчанию - 1 для нормального режима, 2 для максимального режима и 7 для ультра режима. Большее число может дать немного лучшую степень сжатия и более медленный процесс сжатия.

mt=[off | on | {N}]

Установка режим многопоточности. Если Вы имеете многопроцессорную систему или многоядерную систему, Вы можете получить увеличение скорости, с этим ключом. Если Вы определяете {N}, например mt=4, HaoZip пробуют использовать 4 потока.

7z

Параметр | Значение по умолчанию | Описание
x=[0 | 1 | 3 | 5 | 7 | 9 ] | 5 | Устанавливает уровень сжатия.
s=[off | on | [e] [{N}f] [{N}b | {N}k | {N}m | {N}g] ] | on | Устанавливает solid режим.
f=[off | on] | on | Включает или отключает фильтры сжатия для исполняемых файлов.
hc=[off | on] | on | Включает или отключает сжатие заголовка архива.
he=[off | on] | off | Допускает или отключает кодирование заголовка архива.
b{C1}[s{S1}]:{C2}[s{S2}] |  | Устанавливает связывание между кодерами.
{N}={MethodID}[:param1][:param2][..] | LZMA | Устанавливает метод: LZMA, LZMA2, PPMd, BZip2, Deflate, Delta, BCJ, BCJ2, Copy.
mt=[off | on | {N}] | on | Устанавливает режим многопоточности.
x=[0 | 1 | 3 | 5 | 7 | 9 ]

Установки уровня сжатия

Уровень | Метод | Словарь | Число быстрых байтов | Средство поиска соответствия | Фильтр | Описание
0 | Copy | Никакого сжатия.
1 | LZMA | 64 кб | 32 | HC4 | BCJ | Скоростное сжатие
3 | LZMA | 1 Мб | 32 | HC4 | BCJ | Быстрое сжатие
5 | LZMA | 16 Мб | 32 | BT4 | BCJ | Нормальное сжатие
7 | LZMA | 32 Мб | 64 | BT4 | BCJ | Максимальное сжатие
9 | LZMA | 64 Мб | 64 | BT4 | BCJ2 | Ультра сжатие

Примечание: "x" работает как "x=9".

s=[off | on | [e] [{N}f] [{N}b | {N}k | {N}m | {N}g] ]

Включает или отключает solid режим. По умолчанию режим s=on. В solid режиме файлы группируются друг с другом. Обычно сжатие в solid режиме улучшает степень сжатия.

e | Использует отдельный solid блок для каждого нового расширения файла
{N}f | Устанавливает предел для числа файлов в одном solid блоке
{N}b | {N}k | {N}m | {N}g | Устанавливает предел для полного размера solid блока в байтах

Это - пределы по умолчанию для размера solid блока:

Уровень сжатия | Размер solid блока
Сохранение | 0 б
Скоростной | 16 Мб
Быстрый | 128 Мб
Нормальный | 2 Гб
Максимальный | 4 Гб
Ультра | 4 Гб

Ограничение размера solid блока обычно уменьшает степень сжатия, но дает следующие преимущества:

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

Обновление solid .7z архивов может быть медленным, так как, может потребоваться некоторое пересжатие.

Пример:

s=100f10m

устанавливает solid режим с ограничением по 100 файлов и по 10 Мб в одном solid блоке.

f=[off | on]

Включает или отключает фильтры сжатия для исполняемых файлов: dll, exe, ocx, sfx, sys. Это использует BCJ2 фильтр в режиме Ultra и BCJ фильтр в других режимах. По умолчанию режим f=on.

hc=[off | on]

Включает или отключает сжатие заголовка архива. По умолчанию режим hc=on. Если сжатие заголовка архива будет включено, то некоторые части заголовка архива будут сжаты с LZMA методом.

he=[off | on]

Включает или отключает кодирование заголовка архива. По умолчанию режим he=off.

{N}

Устанавливает порядок методов. Это используется также, чтобы связать параметры с методами. Номера должны начаться от 0. Метод, который имеет меньший номер, будет использоваться перед другими.

b{C1}[s{S1}]:{C2}[s{S2}]

Связывает выходной поток S1 в кодере C1 с входным потоком S2 в кодере C2. Если номер потока не будет определен, то будет использоваться поток с номером 0.

Обычно кодер имеет один входной поток и один выходной поток. В 7z некоторые кодеры могут иметь множественные потоки ввода и вывода.

Например, BCJ2 кодер имеет один входной поток и четыре выходных потока.

mt=[off | on | {N}]
Устанавливает режим многопоточности. Если Вы имеете многопроцессорную систему или многоядерную систему, Вы можете получить увеличение скорости, с этим ключом. HaoZip поддерживает режим многопоточности только для сжатия LZMA/LZMA2 и сжатия/распаковки BZip2. Если Вы определяете {N}, например mt=4, HaoZip пробуют использовать 4 потока. Сжатия LZMA использует только 2 потока.
{N}={MethodID}[:param1][:param2] ... [:paramN]

Устанавливает метод сжатия. Вы можете использовать любое число методов. По умолчанию метод LZMA.

Параметры должны быть в одной из следующих форм:

  • {ParamName}={ParamValue}.
  • {ParamName}{ParamValue}, если {ParamValue} - число, а {ParamName}, не содержит чисел.

Поддерживаемые методы:

ID метода | Описание
LZMA | Алгоритм, основанный на LZ алгоритме
LZMA2 | Алгоритм, основанный на LZMA алгоритме
PPMd | PPMdH Дмитрия Шкарина с небольшими изменениями
BZip2 | BWT алгоритм
Deflate | LZ+Huffman
Copy | Никакого сжатия

Поддерживаемые фильтры:

ID метода | Описание
Delta | Delta фильтр
BCJ | конвертер для x86 исполняемых программ
BCJ2 | конвертер для x86 исполняемых программ (версия 2)
ARM | конвертер для ARM (небольшая доводка) исполняемых программ
ARMT | конвертер для ARM Thumb (небольшая доводка) исполняемых программ
IA64 | конвертер для IA-64 исполняемых программ
PPC | конвертер для PowerPC (небольшая доводка) исполняемых программ
SPARC | конвертер для SPARC исполняемых программ

Фильтры увеличивают степень сжатия для некоторых типов файлов. Фильтры должны использоваться с одним из метода сжатия (например, BCJ + LZMA).

LZMA

LZMA - алгоритм, основанный на Lempel-Ziv алгоритме. Он обеспечивает очень быструю распаковку (приблизительно в 10-20 раз быстрее, чем сжатие). Требуемые объемы и конфигурации памяти для сжатия и распаковки, также различны (для подробностей см. описание ключа d={Size}[b|k|m]).

Параметр | Значение по умолчанию | Описание
a=[0|1] | 1 | Устанавливает режим сжатия
d={Size}[b|k|m] | 24 | Устанавливает размер словаря
mf={MF_ID} | bt4 | Устанавливает средство поиска
fb={N} | 32 | Устанавливает число быстрых байтов
mc={N} | 32 | Устанавливает число циклов для средства поиска
lc={N} | 3 | Устанавливает число буквенных контекстных битов - [0, 8]
lp={N} | 0 | Устанавливает число буквенных позиционных битов - [0, 4]
pb={N} | 2 | Устанавливает число позиционных битов - [0, 4]
a=[0|1]

Устанавливает режим сжатия: 0 = быстрое, 1 = нормальное. По умолчанию 1.

d={Size}[b|k|m]

Устанавливает размер словаря для LZMA. Вы должны определить размер в байтах, килобайтах, или Мегабайтах. Максимальное значение для размера словаря - 1 Гб = 2^30 байтов. Значение по умолчанию для LZMA - 24 (16 Мб) в нормальном режиме, 25 (32 Мб) в максимальном режиме (-mx=7) и 26 (64 Мб) в ультра режиме (-mx=9). Если Вы не определите никакой символ для установки [b|k|m], то размер словаря будет вычислен как Размер_словаря = 2^Size байтов. Для того чтобы распаковать файл, сжатый LZMA методом со словарем размером N, Вы нуждаетесь в N байтах доступной памяти (оперативная память).

mf={MF_ID}

Устанавливает средство поиска соответствия для LZMA. Метод по умолчанию - bt4. Алгоритмы из hc* группы не обеспечивают хорошую степень сжатия, но они часто работают довольно быстро в комбинации с быстрым способом (a=0). Требуемые объемы и конфигурации памяти зависят от размера словаря (параметр "d" в таблице ниже).

MF_ID | Память | Описание
bt2 | d*9.5 + 4 Мб | Binary Tree with 2 bytes hashing.
bt3 | d*11.5 + 4 Мб | Binary Tree with 3 bytes hashing.
bt4 | d*11.5 + 4 Мб | Binary Tree with 4 bytes hashing.
hc4 | d*7.5 + 4 Мб | Hash Chain with 4 bytes hashing.

Примечание: ваша операционная система также нуждается в некотором количестве физической памяти для внутренних целей. Так что сохраните, по крайней мере, 32 Мб физической памяти неиспользуемыми.

fb={N}

Устанавливает число быстрых байтов для LZMA. Оно может быть в диапазоне от 5 до 273. По умолчанию - 32 для нормального режима и 64 для максимального и ультра режимов. Обычно большее число дает немного лучшую степень сжатия и более медленный процесс сжатия.

mc={N}

Устанавливает число циклов (проходов) для средства поиска соответствия. Оно может быть в диапазоне от 0 до 1000000000. Значение по умолчанию - (16 + число_быстрых_байтов / 2) для средств поиска соответствия BT* и (8 + число_быстрых_байтов / 4) для средства поиска соответствия HC4. Если Вы определите mc=0, то LZMA будет использовать значение по умолчанию. Обычно большое число дает немного лучшую степень сжатия и более медленный процесс сжатия. Например, mf=HC4 и mc=10000 могут обеспечить почти ту же самую степень сжатия как mf=BT4.

lc={N}

Устанавливает число буквенных контекстных битов (старшие разряды предыдущей буквы). Оно может быть в диапазоне от 0 до 8. По умолчанию - 3. Иногда lc=4 дает выгоду для больших файлов.

lp={N}

Устанавливает число буквенных позиционных битов (младшие биты текущей позиции для букв). Оно может быть в диапазоне от 0 до 4. По умолчанию - 0. Ключ lp предназначен для периодических данных, когда период равен 2^value (где lp=value). Например, для 32-битовых (4-байтовых) периодических данных Вы можете использовать lp=2. Часто лучше установить lc=0, если Вы изменяете ключ lp.

pb={N}

Устанавливает число позиционных битов (младшие биты текущей позиции). Оно может быть в диапазоне от 0 до 4. По умолчанию - 2. Ключ pb предназначен для периодических данных, когда период равен 2^value (где lp=value).

LZMA2

LZMA2 - модифицированная версия LZMA. Она обеспечивает следующие преимущества перед LZMA:

  • Лучшая степень сжатия для данных которые не могут быть сжаты. LZMA2 может сохранить такие блоки данных в несжатой форме. Также такие данные будут быстрее распаковываться.
  • Лучше поддержка многопоточности. Если Вы сжимаете большой файл, LZMA2 может разбить этот файл на куски и сжать эти куски в несколько потоков.
Параметр | Значение по умолчанию | Описание
c={Size}[b|k|m] | dictSize * 4 | Устанавливает размер куска

Если Вы не определяете размер куска, LZMA2 устанавливает его в значение DictionarySize * 4.

LZMA2 также поддерживает все параметры LZMA, но lp+lc не может быть более чем 4.

Использование LZMA2: 1 поток для каждого куска в режимах x1 и x3; и 2 потока для каждого куска в режимах x5, x7 и x9. Если LZMA2 собирается использовать только такое число потоков, требуемых для одного куска, он не разбивает поток по кускам. Таким образом Вы можете получить различную степень сжатия для различного числа потоков. Вы можете получить лучшую степень сжатия, когда Вы используете 1 или 2 потока.

PPMd

PPMd - алгоритм, базируемый на PPM. Этот алгоритм главным образом основан на исходном коде PPMdH Дмитрия Шкарина. PPMd обеспечивает очень хорошую степень сжатия для простых текстовых файлов. Нет никакого различия между скоростью сжатия и скоростью распаковки. Требуемые объемы и конфигурации памяти для сжатия и распаковки также одинаковы.

Параметр | Значение по умолчанию | Описание
mem={Size}[b|k|m] | 24 | Устанавливает размер используемой памяти для PPMd.
o={Size} | 6 | Устанавливает порядок моделей для PPMd.
mem={Size}[b|k|m]

Устанавливает размер используемой памяти для PPMd. Вы должны определить размер в байтах, килобайтах, или Мегабайтах. Максимальное значение - 2Гб = 2^31 байтов. По умолчанию - 24 (16 Мб). Если Вы не будете определять никакого символа для установки [b|k|m], то размер памяти будет вычислен как (2^Size) байтов. PPMd использует одинаковый объем памяти для сжатия и распаковки.

o={Size}

Устанавливает порядок моделей для PPMd. Размер должен быть в диапазоне [2,32]. По умолчанию - 6.

BCJ2

BCJ2 - конвертер переходов для 32-разрядного x86 исполняемых программ (версия 2). Он преобразовывает некоторые команды перехода для того, чтобы увеличить дальнейшее сжатие.

BCJ2 кодер имеет один входной поток и четыре выходных потока:

  • s0: основной поток. Он требует дальнейшего сжатия.
  • s1: поток для преобразованных значений CALL. Он требует дальнейшего сжатия.
  • s2: поток для преобразованных значений JUMP. Он требует дальнейшего сжатия.
  • s3: сервисный поток. Он уже сжат.

Если используется LZMA, размер словаря для потоков s1 и s2 может быть намного меньшим (512 кб - достаточно для большинства случаев) чем размер словаря для потока s0.

Delta

Это позволяет установить дельта смещение в байтах. Например, чтобы сжать 16-битовые стерео WAV файлы, Вы можете установить "0=Delta:4". По умолчанию дельта смещение равно 1.

XZ

XZ теперь поддерживает только LZMA2 кодер. Ключи аналогичны ключам для 7z формата.

Примеры

HaoZipC a -tzip archive.zip *.jpg -mx0

добавляет *.jpg файлы в архив archive.zip без сжатия.

HaoZipC a -t7z archive.7z *.exe *.dll -m0=BCJ -m1=LZMA:d=21 -ms -mmt

добавляет *.exe и *.dll файлы в solid архив archive.7z используя LZMA метод с 2 Мб словарем и BCJ конвертером. Сжатие будет использовать многопоточную оптимизацию.

HaoZipC a -t7z archive.7z *.exe *.dll -m0=BCJ2 -m1=LZMA:d23 -m2=LZMA:d19 -m3=LZMA:d19
     -mb0:1 -mb0s1:2 -mb0s2:3

добавляет *.exe и *.dll файлы в архив archive.7z, используя BCJ2 конвертер, LZMA со словарем 8 Мб для основного выходного потока (s0), и LZMA со словарем 512 кб для s1 и s2 выходных потоков BCJ2.

HaoZipC a -t7z archive.7z *.txt -m0=PPMd

добавляет *.txt добавляет в архив archive.7z, используя PPMd метод.

Команды, которые могут использоваться с этим ключом

a (Add), d (Delete), u (Update)

См. также

Ключи: -t (set Type of archive)


-o (Установить каталог адресат) ключ

-o (set Output directory) ключ

Определяет каталог адресат, куда файлы должны быть извлечены.

Этот ключ может использоваться только с командами извлечения.

Синтаксис

-o{dir_path}
{dir_path}
Это - путь каталога адресата. Он не обязательно должен заканчиваться обратным слешем. Если Вы определите * в {dir_path}, то HaoZip заменит этот символ * на название архива.

Пример

HaoZipC x archive.zip -oc:\Doc

извлекает все файлы из архива archive.zip в каталог c:\Doc.

HaoZipC x *.zip -o*

извлекает все *.zip архивы в подкаталоги с именами этих архивов.

Команды, которые могут использоваться с этим ключом

e (Extract), x (Extract with full paths)


-ao (Метод перезаписи) ключ

-ao (Overwrite mode) ключ

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

Синтаксис

-ao[a | s | t | u ]

Ключ | Описание
-aoa | Перезаписывает все существующие файлы без подсказки.
-aos | Пропустит извлечение существующих файлов.
-aou | Автоматически переименует извлекаемый файл (например, name.txt будет переименован в name_1.txt).
-aot | Автоматически переименует существующий файл (например, name.txt будет переименован в name_1.txt).

Пример

HaoZipC x test.zip -aoa

извлекает все файлы из архива test.zip и перезаписывает, существующее файлы без всякой подсказки.

Команды, которые могут использоваться с этим ключом

e (Extract), x (Extract with full paths)

См. также

Ключи: -y (assume Yes on all queries),


-p (Установить пароль) ключ

-p (set Password) ключ

Определяет пароль.

Синтаксис

-p{password}
{password}
Определяет пароль.

Примеры

HaoZipC a archive.7z -psecret -mhe *.txt

сжимает *.txt файлы в archive.7z используя пароль "secret". Это также зашифрует заголовки архива (ключ -mhe), таким образом, имена файлов будут зашифрованы.

HaoZipC x archive.zip -psecret

извлекает все файлы из archive.zip используя пароль "secret".

Команды, которые могут использоваться с этим ключом

a (Add), d (Delete), e (Extract), t (Test), u (Update), x (Extract with full paths)


-r (Рекурсия подкаталогов) ключ

-r (Recurse subdirectories) ключ

Определяет метод обработки подстановочных знаков и имен файла в командной строке.

Синтаксис

-r[- | 0]

Ключ | Описание
-r | Допустить рекурсию подкаталогов.
-r- | Отключить рекурсию подкаталогов. Эта опция - по умолчанию для всех команд.
-r0 | Допустить рекурсию подкаталогов только для имен подстановочных знаков.

Примеры

HaoZipC l archive.zip *.doc -r-

составляет список всех *.doc файлов, которые принадлежат корневому каталогу архива в архиве archive.zip.

HaoZipC a -tzip archive.zip -r src\*.cpp src\*.h

добавляет все *.cpp и *.h файлы из каталога src и всех его подкаталогов в архив archive.zip.

HaoZipC a archive.7z folder1\

добавляет все файлы из каталога folder1 и всех его подкаталогов в архив archive.7z.

HaoZipC a archive.7z -r folder2\

ищет все каталоги folder2 во всех подкаталогах, и добавляет их (включая все подкаталоги) в архив archive.7z.

Команды, которые могут использоваться с этим ключом

a (Add), d (Delete), e (Extract), l (List), t (Test), u (Update), x (Extract with full paths)

См. также

Ключи: -i (Include), -x (Exclude)


-sfx (Создать SFX архив) ключ

-sfx (Create SFX archive) ключ

Создает самораспаковывающийся архив.

Синтаксис

-sfx[{SFX_Module}]
{SFX_Module}

Определяет SFX модуль, который будет объединен с архивом. Этот модуль должен быть помещен в каталог рядом с HaoZipC.exe. Если {SFX_Module} не будет назначен, то HaoZip будет использовать стандартный SFX модуль.

SFX_Module | Описание
7zSetup_enu.sfx | Windows версия (английский язык).
7zCon_enu.sfx | Консольная версия.
7zSetup_rus.sfx | Windows версия (русский язык). В этом модуле можно менять Логотип и Иконку.
7zSetup_ukr.sfx | Windows версия (украинский язык). Можно менять Логотип и Иконку.
Min7zSetup_RUS.sfx | Windows версия (русский язык). В этом модуле нельзя менять Логотип и Иконку, потому что он сжат с помощью UPX.
Min7zSetup_ukr.sfx | Windows версия (украинский язык). Нельзя менять Логотип и Иконку - модуль сжат с помощью UPX.

Примеры

HaoZipC a -sfx a.exe *.txt

добавляет *.txt файлы в самораспаковывающийся архив a.exe, используя модуль по умолчанию.

HaoZipC a -sfx7zSetup_rus.sfx a.exe *

добавляют все файлы в самораспаковывающийся архив a.exe с модулем 7zSetup_rus.sfx, используя Windows версию SFX модуля.

Команды, которые могут использоваться с этим ключом

a (Add), d (Delete), u (Update),


-ssw (Упаковывать файлы открытые для записи) ключ

-ssw (Compress files open for writing) ключ

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

Синтаксис

-ssw

Пример

HaoZipC a archive.7z -ssw *.txt

упаковывает все *.txt файлы в текущей папке, включая файлы открытые для записи другим приложениями.

Команды, которые могут использоваться с этим ключом

a (Add), u (Update)


-scs (Установить кодировку для файл-списка) ключ

-scs (Set charset for list files) ключ

Устанавливает кодировку для файл-списка.

Синтаксис

-scs{UTF-8 | WIN | DOS}

По умолчанию кодировка - UTF-8.

UTF-8
Устанавливает кодировку Unicode UTF-8.
WIN
Устанавливает кодировку, используемую Windows по умолчанию.
DOS
Устанавливает кодировку, используемую Windows в DOS (OEM) по умолчанию.

Пример

HaoZipC a archive.7z @listfile.txt -scsWIN

упаковывает файлы из файл-списка listfile.txt, который содержит список файлов в кодировке, используемой Windows по умолчанию.

Команды, которые могут использоваться с этим ключом

a (Add), u (Update)


-ssc (Установить режим регистрозависимости) ключ

-ssc (Set Sensitive Case mode) ключ

Устанавливает режим чувствительности к регистру символов для имен файлов.

Синтаксис

-scs[-]

Ключ | Описание
-ssc | Устанавливает режим с учетом регистра. Это - значение по умолчанию для Posix/Linux систем.
-ssc- | Устанавливает режим без учета регистра. Это - значение по умолчанию для Windows систем.

Пример

HaoZipC a archive.7z A*.txt -ssc -r

упаковывает все файлы A*.txt из текущего каталога и всех его - подкаталогов. Эта команда не упаковывает файлы a*.txt.

Команды, которые могут использоваться с этим ключом

a (Add), d (Delete), e (Extract), l (List), t (Test), u (Update), x (Extract with full paths)


-scc (Set charset for console input/output) switch

-scc (Set charset for console input/output) ключ

Устанавливает кодировку для ввода/вывода в консоли.

Синтаксис

-scc{UTF-8 | WIN | DOS}

По умолчанию кодировка - DOS.

UTF-8
Устанавливает кодировку Unicode UTF-8.
WIN
Устанавливает кодировку, используемую Windows по умолчанию.
DOS
Устанавливает кодировку, используемую Windows в DOS (OEM) по умолчанию.

Пример

HaoZipC l archive.7z -sccUTF-8

выведет список файлов из archive.7z в кодировке UTF-8.


-si (Читать данные из stdin) ключ

-si (read data from stdin) ключ

Заставляет HaoZip, читать данные из stdin (стандартный ввод) вместо дисковых файлов.

Синтаксис

-si{file_name}
{file_name}
Определяет имя, под которым будут сохранены в архиве сжатые данные. Если file_name не будет определено, то данные будут сохранены без имени.

Примечание: текущая версия HaoZip поддерживает чтение архивов из stdin только для xz, lzma, tar, gzip и bzip2 архивов.

Примеры

HaoZipC a archive.gz -tgzip -siDoc2.txt < Doc.txt

упаковывает входящий поток из файла Doc.txt в архив archive.gz, используя имя файла Doc2.txt.

HaoZipC x HaoZip4.tar.gz -so | HaoZipC x -si -ttar

распаковывает архив tar.gz.

Команды, которые могут использоваться с этим ключом

a (Add), e (Extract), u (Update), x (Extract with full paths)


-so (Записывать данные в stdout) ключ

-so (write data to stdout) ключ

Заставляет HaoZip, записывать данные в stdout (стандартный поток вывода).

Синтаксис

-so

Примеры

HaoZipC x archive.gz -so > Doc.txt

распаковывает архив archive.gz в выходной поток и затем переадресовывает этот поток в файл Doc.txt.

HaoZipC a dummy -tgzip -so Doc.txt > archive.gz

упаковывает файл Doc.txt в стандартный выходной поток HaoZip и записывает этот поток в файл archive.gz.

Команды, которые могут использоваться с этим ключом

a (Add), e (Extract), u (Update), x (Extract with full paths)


-- (Остановить разбор ключей) ключ

-- (Stop switches parsing) ключ

Отключает синтаксический анализ ключей после "--" в командной строке. Это должно позволить HaoZip-у использовать имена файлов, которые начинаются с "-".

Синтаксис

--

Пример

HaoZipC t -- -ArchiveName.7z

тестирует архив -ArchiveName.7z.


-t (Установить тип архива) ключ

-t (set Type of archive) ключ

Определяет тип архива.

Синтаксис

-t{archive_type}
{archive_type}
Определяет тип архива. Это может быть: 7z, zip, gzip, bzip2 или tar. 7z формат - значение по умолчанию.

Примечание: форматы gzip или bzip2 поддерживают только один файл в архиве. Если Вы хотите сжать больше чем один файл с этими форматами, создайте прежде tar архив, а затем сожмите его с вашим выбранным форматом.

Пример

HaoZipC a -tzip archive.zip *.txt

добавляет все *.txt файлы из текущего каталога в архив archive.zip.

HaoZipC t -t7z.split archive.7z.001

тестирует все файлы в archive.7z.001. Это также проверяет, что архив является многотомным .7z архивом.

HaoZipC x -tiso archive.iso

извлекает файлы из archive.iso, открывая его как ISO архив.

7z x -tudf archive.iso

извлекает файлы из archive.iso, открывая его как UDF архив.

Команды, которые могут использоваться с этим ключом

a (Add), d (Delete), e (Extract), l (List), t (Test), u (Update), x (Extract with full paths)


-u (Опции обновления) ключ

-u (Update options) ключ

Определяет, как обновить файлы в архиве и (или) как создать новые архивы.

Синтаксис

-u[-]<action_set>[!{new_archive_name}]

  <action_set> ::= <state_action>...

    <state_action> ::= <state><action>

      <state> ::= p | q | r | x | y | z | w

      <action> ::= 0 | 1 | 2 | 3

Параметры

dash (-)

Отключает любые обновления в базовом архиве.

Термин базовый архив означает архив, назначенный "base_archive_name" в командной строке. Для подробностей см. синтаксис Командной строки

{new_archive_name}

Определяет имя-путь нового архива, который будет создан. Все опции в этом ключе относятся к этому новому архиву.

Если не назначен, то все опции в этом ключе относятся к основному архиву команды.

<state>

Определяет состояние специфического файла, который будет обработан.

<state> ::= p | q | r | x | y | z | w

Для каждого уникального имени файла есть 6 вариантов состояния:

<state> | Формулировка условия | Файл на диске | Файл в архиве
p | Файл существует в архиве, но не соответствует подстановочными знаками. | Существует, но не соответствует
q | Файл существует в архиве, но не существует на диске. | Не существует | Существует
r | Файл не существует в архиве, но существует на диске. | Существует | Не существует
x | Файл в архиве более новый, чем файл на диске. | Старее | Более новый
y | Файл в архиве старее, чем файл на диске. | Более новый | Старее
z | Файл в архиве - такой же, как файл на диске | То же самое | То же самое
w Не может быть обнаружен, какой более новый файл (времена - те же самые, размеры отличны) ? ?
<action>

Определяет действие для данного <state>.

<action> ::= 0 | 1 | 2 | 3

Для каждого состояния Вы можете определить один из трех вариантов действий:

<action> | Описание
0 | Игнорировать файл (не создавайте пункт в новом архиве для этого файла)
1 | Копировать файл (копируют из старого архива в новый)
2 | Упаковать (сжимают файл с диска в новый архив)
3 | Создать Анти-пункт (пункт, который удалит файл или каталог в ходе извлечения). Эта функция поддержана только в 7z формате.

Замечания

Любая команда обновления (типа a (Add), d (Delete), u (Update)) может быть назначена в этих условиях.

Следующая таблица показывает установки действий для команд обновления.

команда \ <state> | p | q | r | x | y | z | w
d (Delete) | 1 | 0 | 0 | 0 | 0 | 0 | 0
a (Add) | 1 | 1 | 2 | 2 | 2 | 2 | 2
u (Update) | 1 | 1 | 2 | 1 | 2 | 1 | 2
Freshen | 1 | 1 | 0 | 1 | 2 | 1 | 2
Synchronize | 1 | 0 | 2 | 1 | 2 | 1 | 2

Если Вы не определяете опцию !{new_archive_name}, тогда все опции будут относиться к основному архиву (архив, назначенный в командной строке после HaoZipC команды). Если Вы определяете опцию !{new_archive_name}, тогда HaoZip также создаст новый архив с указанным именем, и все опции будут относиться к этому новому архиву.

Множественные ключи обновления поддержаны. HaoZip может создать любое число новых архивов в ходе одной операции.

По умолчанию, набор действий для каждого нового архива назначен как набор действий основной команды. Есть 3 различные набора действий для команд: a (Add), d (Delete), u (Update). Вы можете перезагрузить любую пару <state_action>.

Примечания часового пояса

Если Вы изменяете часовой пояс (когда Вы перемещаете свой компьютер в другой часовой пояс или, если перевели часы на летнее/зимнее время, принятое в Вашем поясе), у Вас могут быть некоторые проблемы с командами обновления, которые зависят от времени модификации файла. Настоятельно рекомендуется использовать только файловую систему, которая использует Координированное среднее гринвичское время (Coordinated Universal Time) (UTC) и формат архива, который также использует UTC. В этом случае у Вас не будет никаких проблем с изменениями часового пояса. Также рекомендуется использовать только форматы UTC в других случаях, например, если Вы посылаете файлы кому-то в другом часовом поясе.

Также в некоторых случаях нет никаких проблем, если и файловая система и формат архива используют местное время, например, файловую систему FAT и формат ZIP.

  • UTC файловая система: NTFS
  • UTC форматы архивов: zip с ключом -mtc, 7z, tar, gzip2, iso, wim
  • Файловая система местного времени: FAT, FAT32
  • Форматы архивов местного времени: rar, zip, cab

Примеры

HaoZipC u c:\1\exist.7z -u- -up0q3x2z0!c:\1\update.7z *

создает новый архив update.7z и записывает в этот архив все файлы из текущего каталога, которые отличается от файлов в архиве exist.7z. Архив exist.7z изменен не будет.

HaoZipC u c:\1\exist.7z -up0q3x2z0!c:\1\update.7z * -ms=off

создает новый архив update.7z и записывает в этот архив все файлы из текущего каталога, которые отличается от файлов в архиве exist.7z.

Примечание: обновление solid .7z архивов может быть медленным, так как, может потребоваться некоторое пересжатие.

Команды, которые могут использоваться с этим ключом

a (Add), d (Delete), u (Update),


-v (Создать тома) ключ

-v (Create Volumes) ключ

Определяет размеры томов.

Синтаксис

-v{Size}[b | k | m | g]
{Size}[b | k | m | g]
Определяет размеры томов в байтах, килобайтах (1 килобайт = 1024 байта), Мегабайтах (1 Мегабайт = 1024 килобайта) или Гигабайтах (1 Гигабайт = 1024 Мегабайта). Если Вы определяете только {Size}, HaoZip обработают его как байты.

Можно определить несколько ключей -v.

Примечание: Пожалуйста, не используйте тома (и не копируйте тома) до окончания архивирования. HaoZip может изменить любые тома (включая первые тома) в конце архивирования.

Пример

HaoZipC a a.7z *.txt -v10k -v15k -v2m

создает многотомный архив a.7z. Первый том будет 10 кб, второй будет 15 кб, а все другие будут 2 Мб.

Команды, которые могут использоваться с этим ключом

a (Add),


-w (Установить рабочий каталог) ключ

-w (set Working directory) ключ

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

Синтаксис

-w[{dir_path}]
{dir_path}

Определяет путь каталога адресата. Не требуется, что бы путь заканчивался обратным слешем.

Если <dir_path> не назначен, то HaoZip будет использовать временный каталог Windows.

Пример

HaoZipC a -tzip archive.zip *.cpp -wc:\temp

добавляет *.cpp файлы в архив archive.zip, создавая временный архив в папке c:\temp.

Команды, которые могут использоваться с этим ключом

a (Add), d (Delete), u (Update),


-y (Отвечать Да на все вопросы) ключ

-y (assume Yes on all queries) ключ

Отключает большинство нормальных пользовательских запросов в ходе выполнения HaoZip. Вы можете использовать этот ключ, чтобы подавить запросы о перезаписи в командах e (Extract) и x (Extract with full paths).

Синтаксис

-y

Пример

HaoZipC x src.zip -y

извлекает все файлы из архива src.zip. Все запросы о перезаписи будут подавлены и файлы на диске с теми же самыми именами как в архиве будут перезаписаны.

Команды, которые могут использоваться с этим ключом

e (Extract), x (Extract with full paths)

См. также

Ключи: -ao (Overwrite mode),


a (Добавить) команда

a (Add) команда

Добавляет файлы в архив.

Примеры

HaoZipC a archive1.zip subdir\

добавляет все файлы и подкаталоги из каталога subdir в архив archive1.zip. Имена файлов в архиве будут содержать префикс subdir\.

HaoZipC a archive2.zip .\subdir\*

добавляет все файлы и подкаталоги из каталога subdir в архив archive2.zip. Имена файлов в архиве не будут содержать префикс subdir\.

cd /D c:\dir1\
HaoZipC a c:\archive3.zip dir2\dir3\
Имена файлов в архиве c:\archive3.zip будут содержать префикс dir2\dir3\, но они не будут содержать префикс c:\dir1\.
HaoZipC a Files.7z *.txt -r

добавляет все *.txt файлы из текущего каталога его подкаталогов в архив Files.7z.

Примечание

HaoZip не использует системный синтаксический анализатор подстановочных знаков, и HaoZip не следует тому архаичному правилу, по которому *.* означает любой файл. HaoZip обрабатывает *.* как соответствие имени любого файла, который имеет расширение. Чтобы обрабатывать все файлы, Вы должны использовать подстановочные знаки *.

Ключи, которые могут использоваться с этой командой

-i (Include)
-m (Method)
-p (Set Password)
-r (Recurse)
-sfx (create SFX)
-si (use StdIn)
-so (use StdOut)
-ssw (Compress shared files)
-t (Type of archive)
-u (Update)
-v (Volumes)
-w (Working Dir)
-x (Exclude)

См. также

Команды: d (Delete), u (Update)

Ключи: -u (Update)


b (Тестирование производительности) команда

b (Benchmark) команда

Оценивает скорость процессора и проверяет оперативную память на ошибки.

Синтаксис

b [number_of_iterations] [-mmt{N}] [-md{N}] [-mm={Method}]

Есть два теста:

  1. Сжатие с методом LZMA
  2. Распаковка с методом LZMA

Тестирование показывает рейтинг в MIPS (миллион команд в секунду). Значение рейтинга вычислено из взвешенной скорости процессора, и оно нормализовано с результатами процессора Intel Core 2 с выключенной опцией многопоточности. Так, если Вы имеете Intel Core 2 Duo, значения рейтинга должны быть близко к реальной частоте центрального процессора.

Вы можете увеличить размер словаря, чтобы увеличить использование памяти ключом -md{N}. Также Вы можете изменить число потоков ключом -mmt{N}.

Столбец Dict показывает размер словаря. Например, 21 означает 2^21 = 2 Мб.

Столбец Usage показывает процент времени, работы процессора. Оно нормализовано для загрузки с одним потоком. Например, 180%-ая нагрузка процессора для двух потоков может означать, что среднее использование процессора - приблизительно 90% для каждого потока.

Столбец R / U показывает рейтинг, нормализованный для 100% использования процессора. Этот столбец показывает усредненную работу процессора в один поток.

Avr показывает среднее значение для различных размеров словаря.

Tot показывает среднее значение рейтингов сжатий и распаковок.

Скорость сжатия и рейтинг сильно зависят от времени ожидания памяти (оперативная память).

Скорость распаковки и рейтинг сильно зависят от целочисленной части процессора. Например, Intel Pentium 4 имеет большой переход misprediction penalty (который является эффектом длинного конвейера), и довольно медленные операции умножения и сдвига. Таким образом, Pentium 4 имеет довольно низкий рейтинг распаковки.

Вы можете запустить тест вычисления CRC, определяя ключ -mm=crc. Этот тест показывает скорость вычисления CRC в Мб/сек. Первый столбец показывает размер блока. Следующий столбец показывает скорости вычисления CRC для одного потока. Другие столбцы - результаты для многопоточного вычисления CRC.

Примеры

HaoZipC b
запуск тестирования.
HaoZipC b -mmt1 -md26
запуск тестирования с одним потоком и словарем на 64 Мб.
HaoZipC b 30

запуск тестирования с настройками по умолчанию для 30 итераций.


d (Удалить) команда

d (Delete) команда

Удаляет файлы из архива.

Пример

HaoZipC d archive.zip *.bak -r

удаляет *.bak файлы из архива archive.zip.

Примечание

HaoZip не использует системный синтаксический анализатор подстановочных знаков, и HaoZip не следует тому архаичному правилу, по которому *.* означает любой файл. HaoZip обрабатывает *.* как соответствие имени любого файла, который имеет расширение. Чтобы обрабатывать все файлы, Вы должны использовать подстановочные знаки *.

Ключи, которые могут использоваться с этой командой

-i (Include)
-m (Method)
-p (Set Password)
-r (Recurse)
-u (Update)
-w (Working Dir)
-x (Exclude)

См. также

Команды: a (Add), u (Update)

Ключи: -u (Update)


e (Извлечь) команда

e (Extract) команда

Извлекает файлы из архива в текущий каталог или в каталог вывода. Каталог вывода может быть определен ключом -o (Set Output Directory).

Эта команда копирует все извлеченные файлы в один каталог. Если Вы хотите извлечь файлы с полными путями, Вы должны использовать команду x (Extract with full paths).

HaoZip выдаст запрос пользователю перед перезаписью существующих файлов, если пользователь не установит ключ -y (Assume Yes on all queries). Если пользователь ответит нет, то HaoZip выдаст запрос, должен ли файл быть извлечен под новым именем. Далее ответ нет - пропускает файл, а да запросит новое имя файла.

HaoZip принимает следующие ответы:

Ответ | Сокращенный | Действие
Yes | y |
No | n |
Always | a | Принять ДА для ВСЕХ последующих запросов того же самого класса
Skip | s | Принять НЕТ для ВСЕХ последующих запросов того же самого класса
Quit | q | Выйти из программы

Сокращенные ответы допустимы.

Примеры

HaoZipC e archive.zip

извлекает все файлы из архива archive.zip в текущий каталог.

HaoZipC e archive.zip -oc:\soft *.cpp -r

извлекает все *.cpp файлы из архива archive.zip в папку c:\soft.

Примечание

HaoZip не использует системный синтаксический анализатор подстановочных знаков, и HaoZip не следует тому архаичному правилу, по которому *.* означает любой файл. HaoZip обрабатывает *.* как соответствие имени любого файла, который имеет расширение. Чтобы обрабатывать все файлы, Вы должны использовать подстановочные знаки *.

Ключи, которые могут использоваться с этой командой

-ai (Include archives)
-an (Disable parsing of archive_name)
-ao (Overwrite mode)
-ax (Exclude archives)
-i (Include)
-o (Set Output Directory)
-p (Set Password)
-r (Recurse)
-so (use StdOut)
-t (Type of archive)
-x (Exclude)
-y (Assume Yes on all queries)

См. также

Команды: x (Extract with full paths)


x (Извлечь с полными путями) команда

x (Extract with full paths) команда

Извлекает файлы из архива, с их полными путями, в текущий каталог или в каталог вывода, если определен.

Для подробностей см. описание команды e (Extract).

Примеры

HaoZipC x archive.zip

извлекает все файлы из архива archive.zip в текущий каталог.

HaoZipC x archive.zip -oc:\soft *.cpp -r

извлекает все *.cpp файлы из архива archive.zip в папку c:\soft.

Примечание

HaoZip не использует системный синтаксический анализатор подстановочных знаков, и HaoZip не следует тому архаичному правилу, по которому *.* означает любой файл. HaoZip обрабатывает *.* как соответствие имени любого файла, который имеет расширение. Чтобы обрабатывать все файлы, Вы должны использовать подстановочные знаки *.

Ключи, которые могут использоваться с этой командой

-ai (Include archives)
-an (Disable parsing of archive_name)
-ao (Overwrite mode)
-ax (Exclude archives)
-i (Include)
-o (Set Output Directory)
-p (Set Password)
-r (Recurse)
-so (use StdOut)
-t (Type of archive)
-x (Exclude)
-y (Assume Yes on all queries)

См. также

Команды: e (Extract)


l (Список содержания архива) команда

l (List contents of archive) команда

Список содержания архива.

Пример

HaoZipC l archive.zip

перечислит все файлы в архиве archive.zip.

Примечание

HaoZip не использует системный синтаксический анализатор подстановочных знаков, и HaoZip не следует тому архаичному правилу, по которому *.* означает любой файл. HaoZip обрабатывает *.* как соответствие имени любого файла, который имеет расширение. Чтобы обрабатывать все файлы, Вы должны использовать подстановочные знаки *.

Ключи, которые могут использоваться с этой командой

-ai (Include archives)
-an (Disable parsing of archive_name)
-ax (Exclude archives)
-i (Include)
-slt (Show technical information)
-p (Set Password)
-r (Recurse)
-t (Type of archive)
-x (Exclude)


t (Тест файлов в архиве) команда

t (Test integrity of archive) команда

Тестирует файлы в архиве.

Пример

HaoZipC t archive.zip *.doc -r

тестирует *.doc файлы в архиве archive.zip.

Примечание

HaoZip не использует системный синтаксический анализатор подстановочных знаков, и HaoZip не следует тому архаичному правилу, по которому *.* означает любой файл. HaoZip обрабатывает *.* как соответствие имени любого файла, который имеет расширение. Чтобы обрабатывать все файлы, Вы должны использовать подстановочные знаки *.

Ключи, которые могут использоваться с этой командой

-ai (Include archives)
-an (Disable parsing of archive_name)
-ax (Exclude archives)
-i (Include)
-p (Set Password)
-r (Recurse)
-x (Exclude)


u (Обновить) команда

u (Update) команда

Обновляет старые файлы в архиве и добавляет файлы, которых нет в архив.

Примечание: обновление solid .7z архивов может быть медленным, так как, может потребоваться некоторое пересжатие.

Пример

HaoZipC u archive.zip *.doc

обновляет *.doc файлы в архиве archive.zip.

Примечание

HaoZip не использует системный синтаксический анализатор подстановочных знаков, и HaoZip не следует тому архаичному правилу, по которому *.* означает любой файл. HaoZip обрабатывает *.* как соответствие имени любого файла, который имеет расширение. Чтобы обрабатывать все файлы, Вы должны использовать подстановочные знаки *.

Ключи, которые могут использоваться с этой командой

-i (Include)
-m (Method)
-p (Set Password)
-r (Recurse)
-sfx (create SFX)
-si (use StdIn)
-so (use StdOut)
-ssw (Compress shared files)
-t (Type of archive)
-u (Update)
-w (Working Dir)
-x (Exclude)

См. также

Команды: a (Add), d (Delete),

Ключи: -u (Update)