Validar una entrada de datos vacía en batch

Hla experto quiero validar una entrada de datos. Ej ingreso una variable hace algo caso contrario si ingreso un dato nulo por ej press enter cuando me dice ingrese un numero.

Probé

if %variable%==[] (

Algo

)Else(

Otra

)

Y no pasa nada también probé

if %variable% EQU "" tan poco

Ejemplo

Cls
@¿echo off
echo ingrese un numero?
set /p variable=
if %variable%=="" (
echo usted no ha ingresando nada en la variable
) else (
Echo usted si ha ingresado algo en la variable
)

Si yo ingreso un enter me da verdadero

Un abrazo.

1 respuesta

Respuesta
1

El problema es que cuando ingresas un enter no se asigna ningún valor a la variable y por lo tanto como la variable no existe hasta que se le asigna un valor, cuando compruebas con if %variable%=="" no funciona porque la variable no existe. Lo más sencillo que se me ha ocurrido es que asignes primero un valor a la variable y luego compruebes si ese valor ha cambiado con "set /p". Te pongo el código.

set variable=VACIO
set /p variable=
if %variable%==VACIO (
echo Variable Vacía
) else (
Echo %variable%
)

En este caso yo he utilizado la expresión VACIO pero puede ser cualquier texto que se te ocurra. Solo es necesario asignar un valor a la variable para que la variable exista y se pueda comprobar su valor con "if".

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas