plánovač úloh - neproběhnou příkazy z .BAT
Dobrý den,
nevím, v čem by mohl být problém, tak bych potřeboval trochu poradit.
Mám BAT soubor a v něm několik příkazů. Nastavil jsem automatické spouštění v určitou hodinu se spuštěním nezávisle na přihlášení a nejvyšším oprávněním.
V danou dobu je úloha dle logu skutečně spuštěna, je jí přiděleno ID a nic. Další záznam je až o ukončení z důvodu překročení doby vyhrazené pro spuštění.
Žádný příkaz se nevykonal. Přitom pokud BAT soubor ručně spustím, vše je bez problému.
V BATu je jen název exesouboru s parametry (bez cest - BAT a program jsou ve stejném adresáři).
Systém je Win 2008.
Díky.
tak tam zkus doplnit cestu k adresáři , co to provede...
Operacni system?
win2k8 mají hodně změněný scheduler, dle mého k horšímu.
nicméně: v prvním kroku si ověř, že scheduler ten task opravdu spustí: do baťáku si dej na začátek něco jako echo uloha spustena >>c:\task.txt - v rootu C: by se měl objevit textový soubor task.txt a v něm tato hláška.
rozhodně špatně je neuvedení cesty - baťák se spouští pod systémovým účtem, který má defaultní adresář v system32, tudíž, pokud není cesta k programu v proměnné PATH, nemůže vidět exáč. tj. před spuštěním v batu buď přidej řádek cd \cesta\k\exe, což je asi lepší řešení, nebo exáč spouštěj s plnou cestou (to může, ale taky nemusí fungovat v závislosti na spouštěném programu).
stejnou chybu jsem teď spáchal v práci: konečně jsem dotunil batku aby ošetřovala úplně všechno, a pod commanderem co neumí ani alt+ins ji fouknul do plánovače bez cesty, jinak nt-w2k-xp.
v noci pak koukám že spuštění "failed".
(..hm, když si tak libuju jak to všechno vím, se mi vybavuje že nejspíš doteď nejde přeplánování při selhání zálohy - že tam zas strkám jen název batky. chce to potunit .fail logy)
p.s.: s účtem system plánovač taky překvapil, když batka havarovala na prázdné proměnné. věděl jsem to o cronu, ale windowsí plánovač jsem podezíral, že se spustí jako uživatel co ho zadal.
tazatel napsal "nejvyšší oprávnění" --> SYSTEM
já vycházel z mé oduševnělé představy: jsem přihlášen jako 'operator', spustí se mi zálohovací batka. zjistí že ještě pracuju nebo sám zálohování zruším, batka vyhodnotí errorlevel a zapíše svoje znovuspuštění na doby plánovaných přestávek - pod účtem 'operator'.
no jak píšeš, není tomu tak, plánovač je 'system'.
zmíněná batka řeší pod kým se spustí: jestli se mu může plést pod ruky, v případě výroby ustoupí/zjistí jestli není pauza v měření (nemáme v provozu stejně stanovené přestávky) - a právě plánovačův 'system' mi to kazil.
jinak právě pro "nejvyšší oprávnění" - je škoda že obsah plánovače nekontroluje hijackthis. ale to už je OT.
Díky všem.
Po zapsání plné cesty (c:\folder...\file.exe) vše funguje jak má. Jinak dávat pomocný příkaz pro ověření nebylo potřeba, v historii bylo vidět, že úloha byla po 9s ukončena (po odstranění pauzy).
Ještě jednou díky.