start "Title goes here" gif_0.exe input1.txt output1_0.txt
timeout /t 60 /nobreak>nul
taskkill /F /IM gif_0.exe
應該做的伎倆。重複你的需求。
說明:
start
s的給定參數
等待60秒內沒有選擇遞減計數之前,沒有任何輸出停止計時器應用程序。
用應用程序的imagename殺死任務。如果你可能有幾個平行運行的實例會殺死所有這些實例!
雖然您可以使用過濾器縮小一個;看看taskkill /?
我不知道是否有在你的問題一個錯字,但假設你的應用程序是gif_n.exe
與參數inputn+1.exe outputn+1.exe
你可以做到以下幾點:
@echo off
setlocal EnableDelayedExpansion
for /l %%n in (0, 1, n) do (
set /a foo=%%n+1
start gif_%%n.exe input!foo!.txt output!foo!_0.txt
timeout /t 60 /nobreak>nul
taskkill /F /IM gif_%%n.exe
)
這將去從0以單步執行,並在循環中執行與上面相同的操作。
2加法這裏:
線setlocal EnableDelayedExpansion
需要激活使用的變量的值的可能性,他們像括號的閉合塊內改變之後的for循環或如果條件。
set /a foo=%%n+1
將變量foo
的值設置爲值%%n+1
。需要使用開關/a
來執行實際計算,而不是附加字符串。
要使用的變量在我們的for循環,我們必須使用DelayedExpasion
(見上文):
簡單地改變%
你通常會使用!
和你做。
爲了確保一切工作正常,您可能需要在三條主線之前放置回聲。
隨意提問,如果有任何不明白:)
第一個代碼完成工作,因爲我的程序(gif。exe)沒有收到輸入,它只是啓動並等待輸入 – JTavares95
不知道這是否是問題,但我現在添加了一個標題。這可能會解決問題,但我不確定...但我只是複製了其他問題:) – geisterfurz007