cmd.exe:何时使用调用运行外部程序
似乎cmd脚本包含:cmd.exe:何时使用调用运行外部程序,cmd,Cmd,似乎cmd脚本包含: prog1 prog2 与 call prog1 call prog2 使用CALL命令有什么意义?通常,CALL用于在批处理文件中运行另一批处理文件。调用的批处理文件完成后,原始批处理文件的其余部分完成 注意:如果批处理文件不存在,它将给出错误消息 语法是:CALL[drive:][path]filename[batch参数] 在何处调用它没有限制。可以在任何批处理文件中使用CALL命令调用另一个批处理文件 希望这有帮助。当您需要调用另一个批处理程序(cmd脚本)时,
prog1
prog2
与
call prog1
call prog2
使用CALL命令有什么意义?通常,CALL用于在批处理文件中运行另一批处理文件。调用的批处理文件完成后,原始批处理文件的其余部分完成 注意:如果批处理文件不存在,它将给出错误消息 语法是:
CALL[drive:][path]filename[batch参数]
在何处调用它没有限制。可以在任何批处理文件中使用CALL命令调用另一个批处理文件
希望这有帮助。当您需要调用另一个批处理程序(cmd脚本)时,应该使用
call
。如果prog1
是可执行文件,则使用“call”将无效。(prog1.exe
)
例如,如果您有两个脚本:
cmd1.cmd
cmd2.cmd
在cmd1.cmd
中有一行:
cmd2.cmd
。。。然后,只要cmd2.cmd
完成执行,脚本就会停止。相反,您应该使用:
call cmd2.cmd
如果您想:
- 调用另一个命令文件,完成后返回到此命令文件;或
- 调用当前命令文件中的函数
number2.cmd
将链接到number2.cmd
文件,这意味着它将运行该脚本,但不会返回以继续在当前脚本上执行
关于第二点,你可以做如下事情:
call :subroutine
call :subroutine
goto :eof
:subroutine
echo in here
goto :eof
您将在此处获得两次打印的
。这种在命令脚本中调用函数的能力实际上非常方便。Aha-因此外部可执行文件和外部cmd脚本之间的区别是关键。谢谢你的启发,这是错误的。如果对可执行文件使用“调用”,则在可执行文件完成后,执行将返回到脚本。如果不使用call,整个过程将在可执行文件完成时结束,即使之后脚本中还有其他命令。@paxdiablo,你说的“链接到number2.cmd
文件”是什么意思?@Pacerier,我的意思是完成后不会返回到当前脚本,几十年前,在我的基础编程时代,我一直坚持使用一个短语:-)请参阅以了解详细信息。我希望通过编辑使这一点更清楚。请看有更好的答案。