В командной строке можно использовать аналог оператора If. Для этого часть командной строки должна быть заключена в угловые скобки в следующем формате:
<<СпецПеременная>:<строка1>|<строка2>>
Вместо данной конструкции в командную строку будет добавлена <строка1>, если <СпецПеременная> – не пустое значение, иначе в командную строку будет добавлено <строка2>.
В конструкции <строка2> может отсутствовать, <строка1> может быть пустой. <СпецПеременная> может, как и другие переменные, подставлять в произвольное место командной строки, если ее заключить в знаки "%".
Другой вариант условной подстановки (аналог оператора switch в C):
<СпецПеременная=знач1:стр1|=знач2:стр2|…|=значN:стрN|:стрИначе>
Если значение переменной равно значX, то вместо конструкции подставится соответствующая стрX. Если не подошло ни одно из значений, то подставляется стрИначе, при этом символ ":" перед стрИначе не обязателен, если стрИначе не начинается с ":" или "=".
(!) Данные конструкции могут быть вложенными.
<СпецПеременная> может принимать следующие значения:
Имя
переменной
|
Возможные
значения
|
Комментарий
|
IfCompress
|
<код степени сжатия>
|
Если в диалоге архивирования выбрана степень сжатия отличная от "По умолчанию".
|
|
<пусто>
|
Иначе.
|
IfKeepCorrupt
|
1
|
Если в диалоге распаковки установлен флажок "Оставлять на диске поврежденные файлы".
(!) Если пользователь установил данный флажок, то для разархивации будет использоваться внешний упаковщик, а не плагин.
|
|
<пусто>
|
Иначе.
|
IfMove
|
1
|
Если в диалоге архивирования установлен флажок "Переместить в архив (удалить исходные файлы после упаковки)".
|
|
<пусто>
|
Иначе.
|
IfMulti
|
<число в байтах>
|
Если в диалоге архивирования установлен флажок "Многотомные архивы" и указан размер тома отличный от автоматического размера.
|
|
<пробел>
|
Если указан автоматический размер тома.
|
|
<пусто>
|
Иначе.
|
IfPacker
|
<имя файла маленькими буквами, без расширения и пути>
|
Заполняется всегда именем файла внешнего архиватора. Имя без расширения и пути. Имя маленькими буквами.
Может быть использовано, например, если в ячейке внешнего упаковщика перечислено через "|" несколько вариантов разных файлов. Тогда, в зависимости от того, какой из файлов будет использован, можно настроить различные опции командной строки.
|
IfRecurs
|
1
|
Если в диалоге архивирования установлен флажок "Рекурсивно сохранять подпапки".
|
|
<пусто>
|
Иначе.
|
IfSFX
|
<код вида архива из выпадающего списка>
|
Если в диалоге архивирования установлен флажок "Создавать самораспаковывающийся архив".
|
|
<пусто>
|
Иначе.
|
IfSolid
|
1
|
Если в диалоге копирования установлен флажок "Непрерывный архив".
|
|
<пусто>
|
Иначе.
|
IfWithPath
|
1
|
При копировании из архива, если в диалоге копирования установлен флажок "Распаковывать с путями".
Либо при копировании в архив, если в диалоге установлен флажок "Сохранять пути".
|
|
<пусто>
|
Иначе.
|
|