2016-04-21 14 views
5

バッチファイルのパスワードを作成するだけですが、if文が機能しません。パスワードが正しいかどうかを確認するために尋ねると、パスワード(hi)を正しく入力しても、elseステートメントに進みます。ここ は問題を抱えている私のコードの一部です:if文が動作していないバッチ(直接elseに行きます)

if "%R%"=="hi" (
goto b 
) else (
echo access denied. 
goto f 
) 

、ここでは、全体のコードです:

echo off 
color 0f 
pause 

:f 
set /p R = "Please enter your passcode " 

if "%R%"=="hi" (
goto b 
) else (
echo access denied. 
goto f 
) 

:a 
for /L %%A IN (1,1,234) DO (
color 6e 
echo   %random%%random%%random%%random%%random%%random%%random% 
color 2a 
echo %random%%random%%random%%random%%random%%random%%random%%random% 
color 1b 
echo %random%%random%%random%%random%%random%%random%%random%%random% 
color 5d 
echo %random%%random%%random%%random%%random%%random%%random%%random% 
color 4c 
echo %random%%random%%random%%random%%random%%random%%random%%random% 
) 
GOTO c 

:b 
echo Welcome Back 
pause >nul 
echo Your current computer does not contain previous files. 
pause >nul 
echo Download Backup Files now? 
pause >nul 
echo Downloading all Files... 
goto a 

:c 
echo access granted. welcome to the CIA Mainframe. 
pause >nul 
echo Please se-se-select a c-command. 
pause >nul 
echo Alert! Alert! The main Fire wall has been Breached! 
pause >nul 
echo Files being deleted now... 
pause >nul 

:d 
color 0c 
echo %random%%random%%random%%random%%random%%random%%random% 
echo %random%%random%%random%%random%%random%%random%%random%%random% 
echo %random%%random%%random%%random%%random%%random%%random%%random% 
echo %random%%random%%random%%random%%random%%random%%random%%random% 
echo %random%%random%%random%%random%%random%%random%%random%%random% 
goto d 

誰が助けてください。

+2

これはR 、たとえば 'R'に設定されています。 'Set'と打つことでこれを見ることができました。 –

答えて

1

これは変数のスペースに問題があります。

>set /p R = "Please enter your passcode: " 
Please enter your passcode: blah 

>echo %R% 
%R% 

>echo %R % 
blah 

変更あなたの行を::

は、コマンドラインからこれを試してみてください

set /p "R=Please enter your passcode: " 

そして、それは修正する必要があります。

関連する問題