短い BAT ファイルを作成しようとしていますが、その機能の 1 つに問題があります。これを行うためにさまざまな方法を試しましたが、どれもうまくいかないようですが、初心者なので問題がわかりません。基本的に、スクリプトは、実行時に特定の .BAT ファイルが存在するかどうかを確認し、存在する場合は、ユーザーがそれを実行するかどうかを尋ねます。ユーザーが Y を指定すると、他の BAT が呼び出され、元のスクリプトが続行されます。ユーザーが N を指定すると、スクリプトは他の BAT を呼び出さずに続行することになっています。これまでのところ、スクリプトは常にファイルに気付き、質問しますが、プロンプトで Y を選択しても機能しません。解決策は明らかだと確信していますが、それは私を逃れています。コードは次のとおりです。
SET /P kmname=Enter database name:
:kmstart
IF EXIST C:\Visual\area\%kmname%\%kmname%.flt (
ECHO %kmname%.flt found, will now create %kmname%.ive.
CD C:\Visual\area\%kmname%\
IF EXIST Preprocess.bat (
SET /P kmpreproc=Found Preprocess.bat. Do you want to run it now?
IF /I "%kmpreproc%" EQU "Y" (
GOTO PREPROC
) ELSE (
GOTO CONTINUE
)
)
GOTO CONTINUE
) ELSE (
ECHO C:\Visual\area\%kmname%\%kmname%.flt does not exist. Try again.
SET /P kmname=Enter database name:
GOTO kmstart
)
:PREPROC
ECHO Running Preprocess.bat.
:CONTINUE
ECHO Continuing process.
PAUSE