Por meio de um script *.cmd que faço set "test = zzz"
na linha de comando e, em seguida "echo %test%"
, o que é retornado para mim não é zzz
, como eu esperava, mas %test%
.
Alguma ideia?
Responder1
A invocação do set
comando realmente funciona, mas não faz o que você espera.
=
O prompt de comando trata literalmente os espaços ao redor do sinal de igualdade ( ). Como resultado, a sequência de comandos
set test = zzz
echo %test%
echo %test %
imprime o seguinte:
%test%
zzz
Como a variável test
não está definida, %test%
não é substituída.
Responder2
Você não pode ter espaços antes ou depois do sinal de igual. Em vez disso, tente isto:
set test=zzz
echo %test%
Responder3
Você tem que omitir os espaços
Eu usei:
set "test=zzz"
e quando eu usei echo %test%
ele exibezzz