[ホーム] - [バッチファイル サンプル一覧] - [Yes No 選択を実現するバッチファイルサンプル]

Yes No 選択を実現するバッチファイルサンプル | Windows バッチファイル






ユーザにより Yes / No を選択させ処理を進めるサンプルコードです。Windows の vbYesNo によるダイアログのようなものです。バッチなので GUI ではなく CUI となります。

参考:
GUIとCUIの違いとそのメリットデメリット


サンプルコード集

以下は Windows 10 環境におけるサンプルコードと実行結果です。


次の例では 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









本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。)

[ホーム] - [バッチファイル サンプル一覧]