${ } (интерпретатор псевдонимов)
Знак доллара, за которым следует пара скобок ( ${ } ), вычисляет различные значения, связанные с указанным псевдонимом пользователя.
Text ${Alias} Text
Text ${/d:Alias} Text
Text ${/f:Alias} Text
Text ${/n:Alias} Text
Text ${/v:Alias} Text
Параметры
Псевдоним
Указывает имя псевдонима для расширения или вычисления. Псевдоним должен быть псевдонимом пользователя или значением переменной , используемым маркером FOREACH .
/d
Возвращает значение 1 или ноль в зависимости от того, определен ли псевдоним в данный момент. Если псевдоним определен, ${/d:Alias}
заменяется на 1; если псевдоним не определен, ${/d:Alias}
заменяется 0.
/f
Вычисляет эквивалент псевдонима, если псевдоним определен в данный момент. Если псевдоним определен, ${/f:Alias}
заменяется эквивалентным псевдонимом; если псевдоним не определен, ${/f:Alias}
заменяется пустой строкой.
/N
Вычисляет имя псевдонима, если псевдоним определен в данный момент. Если псевдоним определен, ${/n:Alias}
заменяется именем псевдонима; если псевдоним не определен, не заменяется, ${/n:Alias}
но сохраняет литеральное значение ${/n:Alias}
.
/v
Запрещает вычисление псевдонимов. Независимо от того, определен ли псевдоним , ${/v:Alias}
всегда сохраняет литеральное значение ${/v:Alias}
.
Дополнительные сведения
Описание использования псевдонимов см. в разделе Использование псевдонимов.
Комментарии
Если параметры не используются и псевдоним определен в данный момент, ${Alias}
заменяется эквивалентным псевдонимом. Если параметры не используются и псевдоним не определен, ${Alias}
всегда сохраняет литеральное значение ${Alias}
.
Одним из преимуществ использования токена ${ } является то, что псевдоним будет оцениваться, даже если он находится рядом с другими символами. Без этого маркера отладчик заменяет только псевдонимы, которые отделены от других маркеров пробелом.
Как указано, существуют обстоятельства, когда токен ${ } не заменяется ничем, но сохраняет свое литеральное значение. Это происходит, если параметр не используется, а псевдоним не определен, если используется параметр /n и псевдоним не определен, и всегда при использовании параметра /v. В таких случаях маркер сохраняет свое литеральное значение, включая знак доллара и фигурные скобки. Таким образом, если этот параметр используется в качестве параметра команды, возникает синтаксическая ошибка, если этот параметр не принимает произвольные текстовые строки.
Однако есть одно исключение из этого. Если вы используете ${/v:Alias}
в качестве первого параметра для команды как (Задать псевдоним) или aS (Задать псевдоним), этот маркер будет рассматриваться только как псевдоним строки, а не как строка ${/v:Alias}
. Это работает только с командами as, aS и ad и работает только при использовании параметра /v— он не будет работать с ${/n:Alias}
или ${Alias}
при сохранении литеральных значений.
Псевдоним должен быть псевдонимом пользователя или значением переменной , используемым маркером foreach , а не псевдонимом с фиксированным именем. Если в строке Alias есть псевдоним с фиксированным именем, он будет заменен до вычисления токена ${ }.