4

Итак, я нахожу много на >NUL , который перенаправляет стандартный вывод на NULL, но я столкнулся с

set /p "=VARNAME"<NUL

и не нашел никакой документации на это вообще.

До сих пор я обнаружил, что он добавляет возврат каретки (по крайней мере, это наблюдаемое поведение), поскольку, когда я его удаляю, мне приходится нажимать клавишу ВВОД для каждой итерации сценария, найденного в ответе здесь: получить версию драйвера через командная строка Windows

Может кто-нибудь помочь мне понять, что это, или еще лучше, где есть документация о том, что это на самом деле делает?

1 ответ1

3

<nul просто перенаправляет стандартный ввод в NUL, фактически отключая ввод. Использование его с set /p является распространенным хаком, используемым для печати информации на экране без ввода новой строки.

Например:

set /p "=This prints everything " <nul
set /p "=on one line." <nul

выходы:

This prints everything on one line.

Обратите внимание, что пробел между "все" и "вкл" помещается в конце первой строки, а не в начале второй, потому что начальный пробел обычно удаляется с помощью SET /P.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .