2012-02-06 85 views
10

我試圖從Windows中的批處理文件運行一些控制檯應用程序的.exe文件。從批處理文件啓動多個控制檯應用程序

然而,當我運行下面的代碼只啓動第一個應用程序:

"C:\Development\App\bin\Debug1\Application.exe" 
timeout 5 
"C:\Development\App\bin\Debug2\Application.exe" 
timeout 5 
"C:\Development\App\bin\Debug3\Application.exe" 
timeout 5 
"C:\Development\App\bin\Debug4\Application.exe" 
timeout 5 
"C:\Development\App\bin\Debug5\Application.exe" 
timeout 5 

(我已經包括了超時攤開INTIAL處理位)

有一種讓腳本文件啓動第一個應用程序的方法,然後繼續並啓動其他應用程序?

理想情況下,我希望腳本文件啓動子目錄中的所有應用程序,以便如果我有Debug\Applications\*.exe或類似的文件,它將啓動類型爲.exe的所有應用程序(並可能在每個應用程序之間等待5秒鐘)。這可能嗎?

回答

22

您可以通過使用start在後臺啓動應用程序:

start "C:\Development\App\bin\Debug1\Application.exe" 

使用start /?從命令窗口來獲得進一步的細節。

例如,

start dir 

將打開一個新的命令窗口,告訴你一個目錄列表,讓finsished當它打開。

的:

start cmd /c "ping 127.0.0.1 && exit" 

命令將打開一個新窗口,運行在本地主機上一個四衝程平然後退出。

在這兩種情況下,當前窗口將立即等待下一個命令。

+0

謝謝,剛剛發現這在http://stackoverflow.com/questions/324539/how-can-i-run-a-program-from-a-batch-file-without-having-the -console-open-after也。關於批處理文件中的動態加載的任何想法? – finoutlook 2012-02-06 13:08:07

+0

START命令將第一個參數解釋爲窗口標題,所以您需要指定一個標題,如'start「」「C:\ Development \ App \ bin \ Debug1 \ Application.exe」 – dbenham 2016-12-30 16:06:00

5
@echo off 
for %%F in ("Debug\Applications\*.exe") do (
    start "" "%%F" 
    timeout 5 
) 
+0

感謝這很有幫助。我已經向其他用戶提供了接受的答案,因爲它回答了我的第一個問題,所以我可以做的最好的是贊成。 – finoutlook 2012-02-06 16:48:27

相關問題