箭头键在Windows批处理文件中触发“暂停”两次

时间:2011-08-05 14:53:21

标签: windows batch-file

在一个空的.bat文件中尝试这个:

@echo off
echo Try space and arrow-down
pause
echo 1
pause
echo 2
pause
echo 3
pause
echo 4
pause
echo 5

为什么任何箭头键会触发两次连续暂停,而空格或字母只会触发一次?

谢谢! 的BER

2 个答案:

答案 0 :(得分:9)

我怀疑暂停只是对_getch()的调用,它会阻塞直到它读取单个输入字符,但有一点需要注意“当读取功能键或箭头键时,每个函数必须被调用两次;第一个调用返回0或0xE0,第二个调用返回实际的键代码。“

答案 1 :(得分:3)

您可以解决此问题:

PAUSE>NUL|SET /P =optional text

感谢http://www.dostips.com/forum/viewtopic.php?f=3&t=2726