Я хочу получить данные от пользователя в пакетном файле, но в то время как он отлично работает, когда я за пределами оператора if, когда я попадаю внутрь, он не получает вход пользователя.Невозможно принять пользовательский ввод в пакетном файле, если оператор if,
@echo off
set /p flag=Enter letter 'y':
echo %flag%
if %flag% == y (
set /p flag2=Enter random string:
echo flag2: %flag2%
)
pause
В приведенном выше примере после того, как я вхожу «у» в первой строке, она выводит содержимое% флага%, а затем во второй строке внутри, если оператор, то% flag2% не получает никакого значения.
Выход:
Enter letter 'y': y
y
Enter random string:lalala
flag2:
Press any key to continue . . .
Почему это происходит?
возможно дубликат [Проблема с пользовательским вводом в моем батнике] (http://stackoverflow.com/questions/916413/problem-with-user-input-in-my-batch -file) – indiv
@indiv Это действительно так. Спасибо. – TheCrafter