MS-DOS 배치 파일에서 스크립트를 일시 중지하고 사용자가 Enter 키를 누를 때까지 기다릴 수 있습니까?
for 루프 내 에서이 작업을 수행하고 싶습니다. 각 반복 후에 스크립트가 일시 중지되고 사용자가 ‘Enter’를 누르기를 기다립니다.
답변
거기에 pause
특별히 enter 키는 아니지만 그렇게 명령이 있습니다.
enter 키만 기다리려면 set
명령을 사용하여 다음과 같은 더미 변수로 사용자 입력을 요청할 수 있습니다 .
set /p DUMMY=Hit ENTER to continue...
답변
pause
명령은 당신이 찾고있는 것입니다. Enter 키를 누르는 경우에만 사건을 보면 runas
명령을 남용 할 수 있습니다 .
runas /user:# "" >nul 2>&1
Enter 키를 누를 때까지 화면이 정지 set/p=
됩니다.
답변
다음 pause
명령을 사용하여 수행 할 수 있습니다 .
dir
pause
echo Now about to end...
pause
답변
사용중인 OS에 따라 유연하다면 CHOICE
거의 모든 키를 기다리는 데 사용할 수 있습니다EXCEPT
입력
Microsoft가 MS-DOS 에뮬레이터 인 “명령 프롬프트”를 호출한다고 주장하는 것을 실제로 언급하고 있다면 아마도 TIMEOUT
목적에 적합 할 있습니다 ( timeout /t -1
단지뿐만 아니라 모든 키 대기 ENTER
).CHOICE
최신 WIN 버전에서도 다시 사용할 수 있습니다.
그리고 경고 SET /P
– set /p DUMMY=Hit ENTER to continue...
작동하지만
set "dummy="
set /p DUMMY=Hit ENTER to continue...
if defined dummy (echo not just ENTER was pressed) else (echo just ENTER was pressed)
ENTER로 끝나는 ENTER 또는 다른 것을 감지합니다.