Feladatütemezést Windows 2000-ben parancssorból az AT utasítás segítségével lehetett végrehajtani. Voltak azonban hiányosságai. Például ha telepítve van a Norton Antivirus 2002 szoftver a gépen, alapesetben kell ütemezett feladatnak lennie a rendszerben (ütemezett víruskeresés). Ezt a Vezérlőpult > (Teljesítmény és karbantartás) > Ütemezett feladatok (Control Panel > (Performance and Maintenance) > Scheduled Tasks) grafikus eszköz futtatásával láthatóvá is tehetjük.
A feladatlistát parancssorból az AT utasítás paraméterek nélküli kiadásával lehet megjeleníteni. Itt azonban "A listában nincsenek bejegyzések" ("There are no entries in the list") üzenetet kapjuk - tehát nem jelenít meg minden feladatot. Windows XP-től kezdve az AT parancs mellett (nem helyett) található egy új parancssori ütemező SCHTASKS néven. Az AT-hez hasonlóan paraméterek nélkül futtatva kilistázza az ütemezéseket. Ha kipróbáljuk meg fogja jeleníteni a vírusirtó által bejegyzett ütemezéseket.
Új ütemezés készítése
A parancs használata ebben az esetben a legbonyolultabb, itt kell a legtöbb kapcsolót egyszerre alkalmazni. Új ütemezés az SCHTASKS /CREATE utasítással hozható létre. Utána viszont több alkapcsolót kell megadni egymás után. Nézzük milyen lehetőségek közül választhatunk:
Adjunk a feladatnak egy könnyen kezelhető nevet a /tn kapcsoló után. Kötelező paraméter.
A futtatandó program neve elérési úttal együtt. Kötelező paraméter.
A végrehajtás időpontját is több kapcsolón keresztül lehet beállítani, szintén kötelező megadni őket:
Itt határozhatjuk meg, hogy milyen időközönként történjen a feladat futtatása. Az "ütemezés" paraméter a következő értékeket veheti fel:
- MINUTE - percenként
- HOURLY - óránként
- DAILY - naponta
- WEEKLY - hetente
- MONTHLY - havonta
- ONCE - egy alkalommal
- ONSTART - minden rendszerindításkor
- ONLOGON - ha egy felhasználó bejelentkezik
- ONIDLE - ha a processzor üresjáratban van
Az előző kapcsoló kiterjesztése az ott megadott értéken belül további pontosító értékként megadható, hogy milyen gyakorisággal hajtódjon végre. A következő értékeket használhatjuk:
- MINUTE - 1-1439 percenként
- HOURLY - 1-23 óránként
- DAILY - 1-365 naponta
- WEEKLY - 1-52 hetente
- MONTHLY - 1-12 havonta
Havonta történő futtatásnál további kapcsolók is rendelkezésünkre állnak a pontosításhoz.
- LASTDAY - a hónap utolsó napján
A következő paraméterrel együtt használva megadhatjuk, hogy a hónap melyik hetén történjen a futtatás.
FIRST - első, SECOND - második, THIRD - harmadik, FOURTH - negyedik, LAST - utolsó.
A WEEKLY és MONTHLY ütemezésnél megadja a hét vagy hónap egy napját. Nem kötelező paraméter.
Felsorolhatjuk, hogy melyik hónapokban történjen a végrehajtás (JAN-DEC) vagy *, ha minden hónapban. Nem kötelező paraméter.
Ennyi perc üresjárati idő után kezdődik a végrehajtás (1-999).
ÓÓ:PP:MM formátumban a végrehajtás idejét kell megadni. Csak ONCE ütemezésnél kell megadni.
Az indítás dátuma, szintén csak ONCE ütemezésnél kell megadni.
Periódikusan ismétlődő ütemezéseknél előírható a befejezés dátuma. Alapértelmezésben nincs ilyen, hanem folyamatosan ismétlődik.
Nézzünk néhány példát a fentiek alkalmazására:
Indítsuk el az C:\X.EXE programot 30 percenként:
schtasks /create /tn "Próba1" /sc minute /mo 30 /tr c:\x.exe
Indítsuk el minden alkalommal, amikor eltelt legalább 2 perc üresjárati idő:
schtasks /create /tn "Próba2" /sc onidle /i 2 /tr c:\x.exe
Indítsuk akkor, ha bejelentkezett egy felhasználó:
schtasks /create /tn "Próba3" /sc onlogon /tr c:\x.exe
Végül indítsuk egy adott időpontban (2002. március 2-án reggel 8:00 órakor).
schtasks /create /tn "Próba4" /st 08:00:00 /sd 2002/03/02 /tr c:\x.exe
Ütemezett feladat törlése
schtasks /delete /tn "Próba4" /f
A /f kapcsoló megerősítés nélkül azonnal törli a feladatot. Használata nem kötelező.
Feladat módosítása
schtasks /change /tn "Próba4" /st 09:00:00
A /tn kapcsoló után adjuk meg a módosítandó feladat nevét, további paraméterekben pedig a módosítást. Példánkban az indítási időpontot változtattuk meg 9:00 órára (lásd fent "Próba4" feladat).
Ütemezési lista megjelenítése
A felvitt feladatok listája az SCHTASKS parancs paraméterek nélküli megadásával listázható ki a képernyőre. A megjelenítés formátuma többféle lehet, ha el akarunk térni az alapértelmezettől, akkor a /query kapcsolót kell alkalmaznunk. Például egy listaszerű megjelenítés az alábbi módon lehetséges.
Ahol a /fo kapcsoló után a "table" - táblázat, "list" - lista, "csv" - csv formátum kiegészítő kapcsolókat használhatjuk. Táblázat és csv formátumnál a /nh nem jeleníti meg az oszlop fejléceket.
schtasks /query /fo table /nh
A feladatok teljes részletességgel történő megjelenítéséhez rendelkezésünkre áll a /v kapcsoló.
schtasks /query /fo table /v
Feladat futtatása azonnal feltétel nélkül
Nem kötelező megvárni a futtatás idejének eljövetelét. Kérhetjük, hogy azonnal induljon el.
schtasks /run /tn "Próba2"
Nem kell mást tenni, mint a /run kapcsoló után megadni a feladat nevét.
Feladat leállítása azonnal feltétel nélkül
Éppen futó feladat azonnali elállításának módja ugyanaz, mint a futtatásé csak a /end kapcsolót kell használni.
schtasks /end /tn "Próba2"
Hitelesítési kapcsolók
Fenti példáinkban minden alkalommal a helyi gépen dolgoztunk. A hálózat egy másik gépén is megvalósítható távolról az ütemezés létrehozása. Ehhez az alábbi kapcsolók állnak rendelkezésünkre:
Annak a gépnek a neve, amelyiken létre akarjuk hozni az új feladatot.
Alapértelmezésben a parancs kiadójának nevével és jelszavával történik az ütemezett program elindítása. Ha el akarunk ettől térni, itt adhatjuk meg egy másik megfelelő jogosultsággal rendelkező felhasználó nevét.
Az előbbi névhez tartozó jelszó.
/ru "" vagy /ru "Rendszer" (/ru "system")
Nem felhasználói fiókkal, hanem a rendszer (system) fiókkal kerül indításra a program.
A rendszerfiók jelszava.