在使用Tivoli Workload Scheduler运行批处理文件时遇到此问题。
有第三方程序,让我们说它的名字是program.exe
批处理文件包含以下命令以调用program.exe
program.exe param1 param2 param3
问题是当program.exe出现警告弹出窗口时批处理文件终止;但我们对警告弹出窗口完全没问题。无论遇到多少警告,我们都希望它能够运行。
我已经对此进行了调查,发现使用' start'可以解决问题。
'调用'行为与直接调用相同。
所以当我们直接调用程序时,默认为?
call program.exe
或直接调用和调用之间是否有任何显着差异?
答案 0 :(得分:3)
直接调用和调用之间有什么显着差异吗?
没有区别:您可以call
调用另一个cmd批处理脚本
它还确保您在调用完成后返回当前脚本。
您还可以使用它来调用当前脚本中的函数。
答案 1 :(得分:3)
对于程序而言,它没有区别,但是您获得了不同的参数结果,因为解析器将对参数进行两次评估。
program Program^&Documents "One caret ^ "
call program.exe Program^&Documents "One caret ^ "
第一行按预期工作,但第二行结果为
program.exe Program
&Documents "One caret ^^ "
并且它完全失败,因为&
无法对CALL
进行评估。
通过电话将插入符号加倍。