5

クイズの show.bat ファイルを作成しようとしていて、If-Set コーディングに問題があります。

:10    
echo @: (Press any key to continue)
pause >nul
cls
echo Bonus Question 1:
echo Translate the letters in CAPS.
echo @: Copy the sentence and translate the words in CAPITALS.
echo Il nome di mia ZIA e Gabriella e il nome di mio ZIO e Nick.
echo @: Careful, you only get 3 goes!
echo @: now you try!
set /p BonusAnswer1=">"
set /p BonusAnswer1=">"
if "%BonusAnswer1%"=="Il nome di mia aunty Gabriella e il nome di mio uncle Nick. echo well done! &goto:11
if "%BonusAnswer1%"=="Hint" echo @: Copy the sentence and translate ZIA and ZIO. Only put a capital for Il, Gabriella and Nick. &goto:10

ここに問題があります:

if "%Bonus1Tries%"=="3" set Bonus1Tries=2 &echo you only have %Bonus1Tries% left!

機能していないそのコーディングの唯一の部分は、それが言うことです:

you only have 3 tries left!

それ以外の

you only have 2 tries left!

つまり、

Bonus1Tries=2 に設定

動作していません。よろしくお願いします!-バッチマン

4

2 に答える 2

0

遅延拡張を有効にする必要があります

SETLOCAL ENABLEDELAYEDEXPANSION
set VAR=before
set VAR=after & echo immediate:%VAR%, delayed:!VAR!
ENDLOCAL

レイモンド・チェンの説明によると

于 2013-07-27T07:40:02.990 に答える