Как проверить пустое значение в файле cmd?
у меня есть файл командной строки ниже. Мне нужно проверить пустое значение переменной. Я не предоставляю никаких аргументов командной строки.
@echo off
@set PASSWORD=
@set PORT=9001
@set command=START
if %PASSWORD% NEQ () GOTO MyLabel
:MyLabel
@set command=%command% -p%PASSWORD%
@set command=%command% -i%PORT%
@echo %command%
я попробовал несколько вариантов, таких как сравнение с пустыми скобками (()
), пустые строки (""
), но ничего не работает. Он дает мне следующий вывод, когда он работает:
() был неожиданным в это время.
Я использую Windows 7 x32. Кто-нибудь может помочь?
2 ответов
следующее должно сделать это:
if [%PASSWORD%] NEQ [] GOTO MyLabel
дополнительная информация:ss64.com.
использовать IF DEFINED variable
без знаков процента вокруг переменной.
протестировано в XP (32bit) и Win7 x64:
SET PASSWORD=
IF DEFINED PASSWORD (echo PASSWORD = %PASSWORD%) ELSE (echo PASSWORD is empty or undefined)
IF DEFINED USERNAME (echo USERNAME = %USERNAME%) ELSE (echo USERNAME is empty or undefined)