[ホーム] -
[バッチファイル サンプル一覧] - [Yes No 選択を実現するバッチファイルサンプル]
ユーザにより Yes / No を選択させ処理を進めるサンプルコードです。Windows の vbYesNo によるダイアログのようなものです。バッチなので GUI ではなく CUI となります。
参考:
GUIとCUIの違いとそのメリットデメリット
次の例では set /P によりユーザに文字を入力させ、結果によって分岐しています。
pause で停止することも可能ですが、この場合はどのキーを入力しても先に進んでしまいます。本サンプルでは気が変わった場合に処理を中断できる点がメリットです。
(*)SET /P はユーザーによって入力された文字を変数の値として設定します。古いバージョンの Windows ではこのオプションがサポートされていません。
サンプルコード:
SET /P selected="開始しますか?(Y=YES / N=NO)?"
if /i {%selected%}=={y} (goto :yes)
if /i {%selected%}=={yes} (goto :yes)
:no
echo "No が選択されました"
goto exitlabel
:yes
echo "Yesが選択されました"
:exitlabel
実行結果:
【Y押す場合】
C:\>SET /P selected="開始しますか?(Y=YES / N=NO)?"
開始しますか?(Y=YES / N=NO)?y
C:\>if /I {y} == {y} (goto :yes )
C:\>echo "Yesが選択されました"
"Yesが選択されました"
【Nを押す場合】
C:\>SET /P selected="開始しますか?(Y=YES / N=NO)?"
開始しますか?(Y=YES / N=NO)?n
C:\>if /I {n} == {y} (goto :yes )
C:\>if /I {n} == {yes} (goto :yes )
C:\>echo "No が選択されました"
"No が選択されました"
C:\>goto exitlabel
本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。)
[ホーム] - [バッチファイル サンプル一覧]