
spouštění v batu se zpožděním
zdravím, mám windows server 2016
mám 4 bat soubory, které potřebuji spustit po sobě se zpožděním třeba 2 min a potřebuji ať se spustí vždy, ikdyž spuštění předešlého skončí chybou nebo čeká nebo se cokoliv stane. celkem těch batů bude asi 10 a potřebuji je spouštět opakovaně přes naplánované úlohy
takže udělám jeden "super" bat který bude volat ostatní
vypotil jsem toto:
superbat.bat
start "uloha1.bat"
sleep 120
start "uloha2.bat"
sleep 120
atd.
funguje to, jednotlivé baty se spouští ale
problém je že se všechny ulohy spustí hned a nečeká se pokaždé těch 120 sekund.
nějaký nápad?
díky
Mam pocit, ze tan staci pridat parametr /WAIT
WAIT Spustí aplikaci a počká, až sama ukončí příkaz nebo program.
https://www.computerhope.com/call.htm
sleep není součástí stadardní image Windows, dá se stáhnout jako volitelná aplikace..
náhrada,která se běžně používá:
Případně použít pro volání těch vnořených bat souborů CALL
viz https://pc.poradna.net/questions/2794126-spousteni-v-batu-se-zpozdenim#r2794132
v případě použití call není potřeba sleep, baťáky budou na sebe navazovat.
- takže jsem sleep nahradil příkazem timeout (ten je ještě lepší, protože jde čekání přerušit stiskem klávesy) a vše funguje OK
A nečeká náhodou call na dokončení volané úlohy?
no čeká, tudíž můžeš ten timeout úplně vyhodit.
jasné,
ale já potřebuji aby se další úlohy spouštěly "paraelně" se zpožděním, ikdyby zůstala předchozí úloha viset na nějaké chybě nebo cokoliv
takže díky, a vyřešeno
Nauč se základy powershellu.