Un ejemplo para que quede bien claro :
Código:
@echo off
set "saludo=Hola" // Este es mi comentario.
echo.%saludo%
Hay que entrecomillar la "asignación", luego pueden usar cualquier estilo de comentario.
Algunos ejemplos :
Código:
@echo off
set /p "suma=2+2 : " # La suma, my comment
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
Código:
@echo off
set /p "suma=2+2 : " // La suma
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
Código:
@echo off
set /p "suma=2+2 : " /* La suma */
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
Código:
@echo off
set /p "suma=2+2 : " ' Comment
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
Código:
@echo off
set /p "suma=2+2 : " Comment
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
Código:
@echo off
for %%. in (H e l l o _ W o r l d) do (
call :show %%.
)
goto:eof
:show
<nul set /p "=%*" // Comentario
ping -n 1 loopback > nul
goto:eof
En realidad es sencillo, ya que el Set solo toma el primer parametro, lo siquiente es ignorado.
El truco ya aparece en el sitio de Rob Van Der Woude :
Citar
Leo Gutierrez Ramirez found a way to add any (language) style comments to SET /P commands:
@echo off
set /p "suma=2+2 : " # La suma, my comment
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
@echo off
set /p "suma=2+2 : " // La suma
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
@echo off
set /p "suma=2+2 : " /* La suma */
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
@echo off
set /p "suma=2+2 : " ' Comment
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
@echo off
set /p "suma=2+2 : " Comment
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
@echo off
for %%. in (H e l l o _ W o r l d) do (
call :show %%.
)
goto:eof
:show
<nul set /p "=%*" // Comentario
ping -n 1 loopback > nul
goto:eof
As a matter of fact, any text after the closing doublequote is ignored.
Thanks Leo
@echo off
set /p "suma=2+2 : " # La suma, my comment
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
@echo off
set /p "suma=2+2 : " // La suma
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
@echo off
set /p "suma=2+2 : " /* La suma */
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
@echo off
set /p "suma=2+2 : " ' Comment
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
@echo off
set /p "suma=2+2 : " Comment
if %suma% equ 4 (
echo.Bien
) else (
echo.Mal
)
set suma
@echo off
for %%. in (H e l l o _ W o r l d) do (
call :show %%.
)
goto:eof
:show
<nul set /p "=%*" // Comentario
ping -n 1 loopback > nul
goto:eof
As a matter of fact, any text after the closing doublequote is ignored.
Thanks Leo
Código:
http://www.robvanderwoude.com/clevertricks.php
Saludos.