Código:
set "variable=valor"
que
Código:
(set variable=valor)
Sin embargo, he encontrado un bug de cmd.exe.
Cuando cmd.exe reconoce una sola comilla dentro de paréntesis termina el archivo por lotes.
Por eso si se hace:
Código:
(")
Por eso si tenemos el siguiene código:
test.cmd
Código:
@echo off
(set var=%1)
echo.El texto se muestra.
y ejecutamos:
Código:
test.cmd "
Pero si hacemos:
test.cmd
Código:
@echo off
set "var=%1"
echo.El texto se muestra.
el texto si es mostrado.
Entonces no es lo mismo:
Código:
(set variable=valor)
que:
Código:
set "variable=valor"