私は、テキストベースのゲームの親のための子バッチファイルに取り組んでいます。私は、教授の指示に従って、if not文を使用する必要があります。私は、ユーザーが選択した後に "Y"以外のものを選択した場合、プログラムが終了するところまで行きたいと思っています。私は 'exitでないなら'と 'y == y exitでないなら'を使ってみましたが、プログラムは選択した入力に関係なく、親バッチファイルにループバックします。IfとIf notコマンドのWindowsバッチ利用
if if exitステートメントが常にプログラムを終了することを保証するにはどうすればよいですか?注:プログラムは、デスクトップから
:: Child Batch File
@echo off
Title Halloween......
color 06
echo set speech = wscript.Createobject("SAPI.spvoice") >> "temp.vbs"
set text=You cannot kill the boogie Man!
echo speech.speak "%text%" >> "temp.vbs"
start temp.vbs
pause
del temp.vbs
Echo Another Round??
Pause
cls
Choice
if y==y call scarymovie.bat
if not goto exit
:exit
親バッチファイルを実行している:それはどのように動作するか
@Echo Off
Title Slim Shady - Scary Movie
color 04
:start
set /a counter+=1
Echo You Have Run This Program %counter% times
Echo %counter% >> answers.txt
Echo Greetings Traveler, Scrawl Your Name Across The Screen
set /p name=
Echo %name% >> answers.Txt
Echo What's Your Favorite Scary Movie??
Pause
cls
Echo Press 1 for Halloween
Echo Press 2 for The Exorcist
Echo Press 3 for I Doesn't Afraid No Ghost
set /p movie=
Echo %movie% >> answers.txt
if %movie%==1 call Halloween.bat
if %movie%==2 call Exorcist.bat
if %movie%==3 Start www.SesameStreet.org
Pause
Cls
Y == Yは常に評価するために起こっている:)何かが不明である場合は質問をお気軽に本当に。 https://en.wikipedia.org/wiki/Choice_(command)#Syntax –
親スクリプトでset/pを使用する理由は何ですか? 選択肢をset/p again =に置き換えた後、 IF NOT%再び%== y exit/b –
ありがとうございました。 – CutAndJack