Не только cmd.exe , но я имею в виду все стандартные утилиты в windows (поддерживается WinXP-Win7).
Почему это должно быть возможно, скажем, для edlin.exe? Это бессмысленное требование.
Если вы хотите запросить один символ, возвращая его сразу после ввода, вам придется использовать некоторую форму дополнительной утилиты сверх того, что входит в комплект Windows NT 5.1, даже если это просто клон Win32 программы MS-DOS 6.2 choice.com (которая, как программа MS-DOS, конечно, не будет работать на Windows x86-64).
С TCC /LE от JP Software, который является заменяющим интерпретатором команд, встроенная команда INKEY делает именно то, что вы просите, и может использоваться следующим образом:
inkey %%key
Затем нажатая клавиша находится в переменной окружения key .
Кроме того, в Windows NT 4.0 Server Resource Kit и более поздних версиях Microsoft предоставляет choice.exe , который является клоном Win32 для MS-DOS choice.com . Обратите внимание, однако, что это набор ресурсов сервера . В Windows NT Server 5.2 и новее, choice.exe связан с самой Windows . Однако, опять же, обратите внимание, что это серверная версия Windows.