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

时间:2013-11-14 02:17:18

标签: shell batch-file

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

我想构建能够顺序运行.exe文件的批处理文件。

  

Run batch files sequentially

我试图应用上述想法,但我不确定如何应用它

例如,D:/

上有三个文件

在“D:/”中有三个.exe文件。

  1. MyDriver.exe
  2. YouDriver.exe
  3. Mysoftware.exe
  4. 我想建立顺序运行三个exe文件的批处理文件

    可能的情况是......

      
        
    1. 运行批处理文件
    2.   
    3. 运行MyDriver.exe
    4.   
    5. 弹出MyDriver文件的安装GUI,然后用户开始安装Mydriver
    6.   
    7. 使用MyDriver.exe完成
    8.   
    9. 运行YouDriver.exe
    10.   
    11. 弹出YouDirver文件的安装GUI,然后用户开始安装YouDriver
    12.   
    13. 使用YouDriver.exe完成
    14.   
    15. 运行MySoftware.exe
    16.   
    17. 弹出MySofrware安装界面,然后用户开始安装MySoftware
    18.   
    19. 完成退出批处理文件。
    20.   

    我不确定批处理文件是否可以执行此操作...

    如果不可能,还有其他选择来构建它吗?

    感谢

4 个答案:

答案 0 :(得分:9)

你实际上并不需要做任何特别的事情来实现这一目标;批处理文件默认是同步的,因此批处理文件的执行将在启动可执行文件时暂停,并在退出时恢复。这样简单应该做的事情:

@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

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

答案 1 :(得分:7)

这将启动每个文件并等待它完成,然后启动下一个文件。

@echo off
start "" /w /b "d:\MyDriver.exe"
start "" /w /b "d:\YouDriver.exe"
start "" /w /b "d:\Mysoftware.exe"

答案 2 :(得分:3)

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将暂停批处理文件,直到程序关闭。

答案 3 :(得分:0)

尝试将其放在要运行的文件的同一目录中。如果不能,请使用cd C:\ Directory \ Name将其更改为MyDriver.exe文件所在的目录。然后只需执行MyDriver.exe-您不需要调用或启动语句。

MyDriver.exe
YouDriver.exe
MySoftware.exe

如果你需要,请在开始时使用cd。