Вопрос
Как продолжить работу с интерактивным пакетным файлом?
Например.,
Вы хотите продолжать?[да/нет]
Если 'y', перейдите к Label1
Иначе Перейти к метке 2
Спасибо
Решение
Вы можете использовать команду SET.Ниже приведена команда DOS, эквивалентная приведенному выше псевдокоду:
set /p choice=Do you want to continue? [y/n]
if '%choice%'=='Y' goto label1
goto label2
Другие советы
С помощью команды выбора вы можете указать набор допустимых символов и сообщение:
choice /C YN /M "Do you want to continue?"
if errorlevel 2 goto labelno
if errorlevel 1 goto labelyes
set /p choice= Хотите продолжить?y/n], если "%выбор%" == "y" (goto label1) else goto label2
Большинство ответов ваших ребят мне нравятся, но максимум, что я бы сделал, это (например, этот код — мой способ организации.
:Label1
@echo off
color (any color)
title (anything here)
set /p choice=Do you want to continue? [y/n]
IF %choice% == y goto Label2
IF %choice% == n exit
:Label2
cls
echo you chose Yes.
Я знаю 1 способ сделать это (например, опубликовано @user3093687)
set /p choice=Do you want to continue? (y,n)
if /I %choice%==y goto Label2
if /I %choice%==n goto exit
:Label2
Cls
echo You chose yes
:exit
exit
Параметр /I во второй и третьей строке командного файла делает его нечувствительным к регистру и игнорирует специальные символы (пример, Y и y оба будут читаться как y.