如何一个接一个地调用一个批处理文件

Wii*_*Wii 28 cmd batch-file

我有一个我正在测试的批处理文件,我想要做的就是以下内容

CALL ping.bat
Run Code Online (Sandbox Code Playgroud)

然后在该批处理文件运行后我想运行另一个文件:

CALL ping2.bat
Run Code Online (Sandbox Code Playgroud)

现在我在批处理文件中将这两行放在一起,第一批文件将成功触发但第二批文件不会成功触发.有什么建议?

CALL ping.bat
CALL ping2.bat
Run Code Online (Sandbox Code Playgroud)

Ping .bat只是:

ping 127.0.0.1    
Run Code Online (Sandbox Code Playgroud)

Joe*_*oey 18

检查exit第一批中是否有某个位置.有些人习惯性地使用它跳出批处理文件,这不是退出批处理(exit /b或者goto :eof是)的正确方法.

另一种选择是,你可能调用另一个批处理中的第一个没有 call.


And*_*y M 6

正如你所说ping.bat,如果它的内容仅仅ping 127.0.0.1是你自己的话,你就有可能只是自称.

我会追加.exeping把事情肯定.

正如jeb所提出的那样,为批处理文件选择一个不同的名称是一个更好的解决方案.


knk*_*k24 5

假设您有3个批处理文件.

  1. ping1.bat,其内容为ping 127.0.0.1
  2. ping2.bat,其内容为ping 127.0.0.1
  3. ping3.bat有以下两行
    调用ping1.bat
    调用ping2.bat

如果您将所有三个批处理文件放在一个文件夹中(假设在C:\ NewFolder下),那么如果双击ping3.bat,您肯定不会收到任何错误.

注意:如果您不想等待第一个命令完成,那么使用start关键字,它只启动进程并继续批处理文件中的下一行,而call将按顺序执行(仅在下一行之后)当前进程完成,start允许并行)
为了并行使用ping3.bat中的以下两行代码:

启动ping1.bat
启动ping2.bat