构建一个批处理文件以按顺序运行exe文件

10

我刚开始学习如何构建批处理文件(在Windows 7环境下)。

我想要构建一个批处理文件,能够按顺序运行.exe文件。

运行批处理文件的顺序

我试图应用上面的方法,但我不太确定如何应用它。

例如,在“D:/”中有三个文件。

在 "D:/" 中,有三个 .exe 文件。

  1. MyDriver.exe
  2. YouDriver.exe
  3. Mysoftware.exe

我想要构建一个批处理文件,按顺序运行三个exe文件。

可能的场景是..

  1. 运行批处理文件
  2. 运行 MyDriver.exe
  3. 打开 MyDriver 文件的安装界面,然后用户开始安装 Mydriver
  4. 完成 MyDriver.exe
  5. 运行 YouDriver.exe
  6. 打开 YouDirver 文件的安装界面,然后用户开始安装 YouDriver
  7. 完成 YouDriver.exe
  8. 运行 MySoftware.exe
  9. 打开 MySofrware 安装界面,然后用户开始安装 MySoftware
  10. 完成,退出批处理文件。

我不确定批处理文件是否可以实现这个功能...

如果不可能,是否有其他选项可以构建它?

谢谢

4个回答

10

实际上,您不需要采取任何特殊措施来实现这一点;批处理文件默认情况下是同步的,因此在启动可执行文件时批处理文件的执行将暂停,并在退出后恢复。只需使用以下简单的命令即可:

@echo off
REM "@echo off" prevents each line from being printed before execution,
REM and is optional
REM "REM" introduces a comment line
D:\MyDriver.exe
D:\YouDriver.exe
D:\MySoftware.exe

当然,如果你有兴趣检查程序的返回值,以查看它们是否成功安装(假设安装程序提供了这些信息),那么事情会变得稍微复杂一些;如果这正是你需要的,请在评论中说明,我将相应地扩展我的答案。


9
这会启动每个文件并等待它完成,然后启动下一个文件。
@echo off
start "" /w /b "d:\MyDriver.exe"
start "" /w /b "d:\YouDriver.exe"
start "" /w /b "d:\Mysoftware.exe"

4
start MyDriver.exe
start YouDriver.exe
start MySoftware.exe

如果你想要在不同的目录中使用批处理文件,你需要执行以下操作:

cd D:\
start MyDriver.exe
start YouDriver.exe
start MySoftware.exe

如果你想要更灵活的系统:

echo Welcome to EXE starter!
set /p dir = DIR:
set /p exe = EXE1:
set /p exe1 = EXE2:
set /p exe 2 = EXE3:
cd DIR
start exe
start exe1
start exe2

您好!

按顺序执行以下步骤:

call YouDriver.exe
call MeDriver.exe
call Mysoftware.exe

call 命令会等待程序关闭后才继续执行批处理文件。


2
你已经解决了“同时”的问题,但他特别要求按顺序执行。 - Nathan Kidd

0
尝试将其放置在要运行的文件的相同目录中。如果无法这样做,请使用“cd C:\Directory\Name”切换到“MyDriver.exe”文件所在的目录。然后只需执行MyDriver.exe- 您不需要调用或启动语句。
MyDriver.exe
YouDriver.exe
MySoftware.exe

如果需要,请在开头使用cd。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接