批处理文件命令PAUSE不起作用
我正在创建一个简单的批处理文件来协助处理一些事情,并且我还提供了一些打印出来的说明,以便让用户在退出前查看。 目前,窗口很快关闭。 所以我在文件末尾添加了PAUSE
,但它不想工作。
我查看了其他关于SO的问题,并检查了确保行结束符是CRLF
并且在文件末尾有CRLF
。
有什么建议么?
如果最后一个命令失败暂停将不起作用。
你可以通过在你正在运行的命令后面加上“call”来解决它(暂停之前的任何命令),那么暂停将会起作用。
例如,我有一个phpunit批处理文件,看起来像这样:
phpunit tests/sometests.php
pause
当phpunit失败时,它只是退出而没有暂停。 将其更改为此可以正确暂停:
call phpunit tests/sometests.php
pause
暂停前的最后一个命令是否成功执行? 介意分享你的剧本 - 至少最后几条命令?
或者,由于您似乎正在使用Windows7,请尝试使用Timeout命令并查看是否有效。
我甚至在回声上遇到了问题......假设它是由长批处理文件造成的......暂停正在执行,但并未暂停,它几乎就像暂停执行后按下了一个键。
试过以上建议的解决方案; 没有工作。
所以只是为了将来的参考,以下是我所做的:
基本上只是“暂停>没有&&暂停>无”; 每次工作。
@echo off
CALL :ForcePause "Press any key to resume."
ECHO.
ECHO Hello World!
ECHO.
CALL :ForcePause "Press any key to exit."
EXIT
REM You can remove echo if you don't want to pass custom string for pause
:ForcePause
echo %~1
pause > nul && pause > nul
GOTO :EOF
链接地址: http://www.djcxy.com/p/30341.html