[英]Batch file runs other batch files without press key
我有一个运行多个批处理文件的批处理文件。 我在此文件中使用CALL语句。 但是执行完一个批处理文件后,我必须按任意键才能运行其他批处理文件。 是否有可能在调用每一个批次后如何禁用此条件以按任意键?
附注:我单批运行时需要“按任意键”。
有一个主要批处理文件的示例
@echo off
echo This batch runs all scripts
CALL A.bat
CALL B.bat
CALL C.bat
您(可能)在每个被调用的脚本中都有一个pause
命令。 删除它们。
如果不允许您修改这些脚本(或者由于动态创建它们而无济于事对其进行修改),则可以通过将echo
传递给脚本来伪造ENTER
:
echo/|call A.bat
echo/|call B.bat
echo/|call C.bat
echo/
只会输出一个CRLF
(= ENTER
=空行)
|
会将左命令的输出作为右命令的输入。
注意:这将给脚本中的第一个命令一个ENTER
,需要一些输入。 如果幸运的话,这是pause
命令。
编辑以使您最近的评论与问题相匹配:
当您可以编辑a.bat
等文件时,可以在此处用以下行替换pause
命令:
echo %cmdcmdline%|find /i " CALL " >nul || pause
这将检查是否call
了脚本,并且仅执行了pause
,否则未执行。
%cmdcmdline%
包含执行脚本的确切方法。
使用“暂停”> null来取消“按任意键继续”。 信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.