Условные конструкции и длинные переменные

Начало  Предыдущая  Следующая

В командной строке можно использовать аналог оператора 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

При копировании из архива, если в диалоге копирования установлен флажок "Распаковывать с путями".

Либо при копировании в архив, если в диалоге установлен флажок "Сохранять пути".

 

<пусто>

Иначе.