2016-09-24 12 views
2

変数に文字列を取得して空であるかどうかをチェックするバッチスクリプトを作成しようとしていて、空の場合はループに送られます。次のコードは問題を表していますバッチスクリプトで文字列変数が空であることを確認してください

:loop 
set /p cide= 
IF NOT "a%1"=="a" (set cide="%1") 
IF [%1]==[] goto loop 
ELSE 
echo IDE entered 
TIMEOUT 5 > NUL 

文字列を入力してもプログラムがループを開始します。

IF [%cide%]==[] goto loopまたはIF %cide%==[] goto loopを入力しようとすると、「ELSE」が認識されないというエラーが表示されました。

何か助けていただければ幸いです。おかげ

+0

'定義されていない場合CIDE後藤loop' – aschipfl

答えて

4

は、あなたがそのような何か試すことができます。

@echo off 
:loop 
cls & Color 0A 
echo Type what you want ! 
set /p "cide=" 
IF "%cide%"=="" ( 
    Cls & Color 0C 
    echo You must enter something 
    Timeout /T 2 /NoBreak>nul 
    goto loop 
) ELSE (
    Goto Next 
) 

:Next 
Cls 
echo %cide% is entered 
pause 
+0

おかげ@Hackooを、これは働いていました。私は同じことを試みましたが、あなたが書いたものとは異なる構造で、それはエラーを出すか、出てしまいます。非常に感謝の男!!! – susil95

関連する問題