2010-07-12 215 views
1

我有兩個「exe」(A和B)文件和一個輸入(C)文件。如何編寫一個「bat」文件來多次執行兩個「exe」文件

  • 首先,A文件將C作爲輸入來執行,然後更新輸入(C)文件。
  • 接下來,B文件將以C爲輸入來執行,然後更新輸入(C)文件。
  • ...
  • ...
  • ...

這兩個步驟會重複多次。

我應該使用哪種命令?

回答

0

@迴響
SETLOCAL EnableDelayedExpansion
SET LIST = CMD CMD

FOR %% G IN(%LIST%)DO(
SET NAME = %%ģ
START/WAIT CMD/C!NAME!

+0

如何使用start來控制循環的次數? – Fihop 2010-07-13 00:01:34

+0

我只是在迴應羅伯茨關於文件鎖定的有效觀點。當你將執行包裝到循環中時,循環將等到第一個程序退出,然後再啓動另一個迭代。查看簡單的編輯測試。 – 2010-07-13 10:03:37

+0

非常感謝。我已經使用Matlab計算出了我的問題。 Matlab允許嵌入dos命令。所以這樣,我可以在Matlab中使用「for」循環。最後,再次感謝。 – Fihop 2010-07-14 20:45:10

0

聽起來很嚇人......

你需要保持File Locking記住讓你的應用程序不遍佈對方步驟。

修改相同共享資源的兩個進程可能會導致各種麻煩。

這是工作/娛樂還是學校?

+0

是的,就做TA工作。 – Fihop 2010-07-12 23:07:33

0

您可以在批處理文件中使用for循環。這不是完全清楚你想要什麼,但下面的命令將A.EXE,然後運行B.EXE每個傳遞參數c.dat每一個3次:

for /l %l in (1,1,3) do for %a in (a.exe b.exe) do %a c.dat 
+0

這真的很有幫助。我有另一個問題。如果我必須執行一個「exe」文件和一個java文件(.class)。我應該如何寫它。 我試過這樣: 「for/l%l in(1,1,3)do a.exe c.dat java b c.dat」。 但它失敗了。 – Fihop 2010-07-13 03:55:17

+0

@FihopZz,在這種情況下,製作另一個運行java應用程序的批處理文件(b.bat也許)會更簡單。 – 2010-07-13 13:22:37

+0

非常感謝。我已經使用Matlab計算出了我的問題。 Matlab允許嵌入dos命令。所以這樣,我可以在Matlab中使用「for」循環。最後,再次感謝。 – Fihop 2010-07-14 20:44:36

相關問題