为什么我在 Windows 7 上的 .BAT 文件不能正确暂停?

Rya*_*ger 5 windows-7 batch-file

我一直在玩在我的计算机上编写批处理文件有一段时间了,我很困惑为什么 PAUSE 不能像我想象的那样工作(也许我只是做错了 idk,只是真的很困惑)。

基本上我有:

@echo off
echo Hello!
pause
echo Hi again!
pause
echo HEY HEY!!
pause
Run Code Online (Sandbox Code Playgroud)

当它运行时,我得到:

Hello!
Press any key to continue...
Run Code Online (Sandbox Code Playgroud)

然后我只按一个键,就会发生这种情况:

Hi again!
Press any key to continue...
HEY HEY!!
Press any key to continue...
Run Code Online (Sandbox Code Playgroud)

我不明白为什么它会跳过第二个 PAUSE ......我注意到如果我要这样做:

@echo off
echo Hello!
pause
echo Hi again!
pause
pause
echo HEY HEY!!
pause
Run Code Online (Sandbox Code Playgroud)

然后它会暂停“嗨又一次!” 反对不暂停地执行它(但是它会连续两次打印“按任意键继续...”)

我真的很迷茫,无法继续我的生活,直到我知道为什么会这样:

Can*_*uke 0

它按预期工作。该pause语句只是等待输入。唯一的开关是隐藏它正在等待按键的事实。

当我运行您显示的最后一个批处理文件时,我看到以下内容:

C:\Users\asdf\Desktop>more test.bat
@echo off
echo Hello!
pause
echo Hi again!
pause
pause
echo HEY HEY!!
pause

C:\Users\asdf\Desktop>test
Hello!
Press any key to continue . . .
Hi again!
Press any key to continue . . .
Press any key to continue . . .
HEY HEY!!
Press any key to continue . . .
Run Code Online (Sandbox Code Playgroud)

所以我发现很难理解你的要求......