2

私と私の友人は退屈なので、BATCH で少しコーディングを行うことにし、基本的なログイン スクリプトを作成しました。基本的に、ユーザーとして「Jack」を入力すると、パスワードを要求され、「Pass」と入力すると、正しくないはずなのに、正しくないと表示されます。奇妙なことに、間違ったパスワードを入力すると、正しいと表示されます。

これが私のコードです

@echo off
color 2
:A
cls
echo Welcome, Please Log In
set /p user=Please Enter A Username:
IF "%user%"=="Jack" (
    set /p pass=Please Enter A Password:
    IF "%pass%"=="Pass" (
        goto :B
    ) ELSE (
        echo Password Incorrect
        ping 192.0.2.2 -n 1 -w 2000 > nul
        goto :A
    )
) ELSE (
    echo Username Incorrect
    ping 192.0.2.2 -n 1 -w 2000 > nul
    goto :A
)
:B
cls
echo Hello %user%
:C
set /p cmd="%user%> "
if "%cmd%"=="exit" (
    goto :EXIT
) ELSE (
    echo Invalid Command.
    goto :C
)
:EXIT
exit
4

3 に答える 3

2

遅延拡張が必要です

フラグを参照setlocal /?してください。EnableDelayedExpansion

于 2013-11-05T20:18:21.097 に答える