it-swarm.com.ru

Как прочитать ввод с консоли в командном файле?

Как мне прочитать ввод с консоли в командном файле? Я пытаюсь добиться функциональности scanf в C. Как я могу сделать то же самое в командном файле?

72
Nohsib

Фрагмент кода в связанном предлагаемом дубликате читает ввод пользователя.

ECHO A current build of Test Harness exists.
set /p delBuild=Delete preexisting build [y/n]?: 

Пользователь может набрать столько букв, сколько он хочет, и он попадет в переменную delBuild.

128
Raymond Chen

Как все говорят, достаточно использовать set /p varname="Prompt message". Если вы просто хотите сохранить экземпляр cmd открытым, а не выходить сразу, достаточно просто выполнить следующее

set /p temp="Hit enter to continue"

в конце вашего сценария, и он будет держать окно открытым.

20
TankorSmash

В дополнение к существующему ответу можно установить опцию по умолчанию следующим образом:

echo off
ECHO A current build of Test Harness exists.
set delBuild=n
set /p delBuild=Delete preexisting build [y/n] (default - %delBuild%)?:

Это позволяет пользователям просто нажать "Enter", если они хотят ввести значение по умолчанию.

13
Richard Williams