С помощью скрипта * .cmd я set "test = zzz"
в командной строке, а затем "echo %test%"
и что мне возвращает echo, это не zzz
, как я ожидал, а %test%
.
Есть идеи?
С помощью скрипта * .cmd я set "test = zzz"
в командной строке, а затем "echo %test%"
и что мне возвращает echo, это не zzz
, как я ожидал, а %test%
.
Есть идеи?
Ваш вызов команды set
самом деле работает, но он не делает то, что вы ожидаете.
Командная строка обрабатывает пробелы, окружающие знак равенства (=
), буквально. В результате последовательность команд
set test = zzz
echo %test%
echo %test %
печатает следующее:
%test%
zzz
Поскольку переменная test
не установлена, %test%
не заменяется.
Вы не можете иметь пробелы до или после знака равенства. Попробуйте это вместо этого:
set test=zzz
echo %test%
Вы должны опустить пробелы
Я использовал:
set "test=zzz"
и когда я использовал echo %test%
он отображает zzz