Skip to content

Razporejevalnik opravil ​

Razporejevalnik opravil (Task Scheduler) se uporablja za avtomatizacijo rednih opravil v WSL, da se izognete ponavljajočemu ročnemu vzdrževanju. Ponuja vizualni upravljalni vmesnik, s katerim lahko ustvarjate in upravljate časovna opravila brez pomnjenja zapletenih parametrov ukazne vrstice.

Primeri uporabe te funkcije:

  • Redno varnostno kopiranje distribucij v WSL
  • Izvajanje lastnih skript ali ukazov

Vsa opravila so zbrana pod potjo \WSLDashboard\UserTasks\ v razporejevalniku opravil Windows, kar omogoča enostaven pregled in upravljanje. V vmesniku lahko v realnem času vidite stanje opravil (pripravljeno / v teku / onemogočeno).

Repozitorij skript skupnosti ​

Primere skript (varnostno kopiranje distribucije) lahko prenesete iz spodnjega repozitorija skupnosti, da hitro začnete:

https://github.com/owu/wsl-community

To je repozitorij, ki ga soustvarjajo uporabniki; vabljeni k oddaji Pull Request za prispevanje skript ali deljenje najboljših praks.

Izvajanje ukazov ​

Konfiguracija ukaza ​

Vsakemu časovnemu opravilu lahko konfigurirate ukaz (skripto ali izvršljiv program), ki se bo izvajal, z naslednjimi možnostmi:

Konfiguracijski elementOpis
Izvajalni ukazPot do skripte ali izvršljivega programa, ki ga želite zagnati; podprte oblike .bat, .ps1, .cmd, .exe, .py itd. Datoteko lahko izberete z gumbom "Prebrskaj".
Parametri ukazaDodatni parametri, ki se posredujejo ukazu; neobvezno.
Skrbniška dovoljenjaPo označitvi se opravilo izvaja z najvišjimi dovoljenji; primerno za operacije, ki zahtevajo UAC povišanje.

Operacije z opravili ​

Po ustvarjanju opravila lahko z njim izvedete naslednje operacije:

OperacijaOpis
Takojšnje izvajanjePrisilno sproži takojšnje izvajanje opravila, ne glede na pravila razporejanja.
Omogoči/onemogočiZačasno ustavi ali nadaljuje samodejno razporejanje opravila.
IzbrišiOdstrani opravilo iz razporejevalnika opravil.

Pravila razporejanja ​

Cron izrazi ​

Razporejanje opravil uporablja standardni Cron izraz s 5 polji za definiranje pravil izvajanja, v obliki:

minute ura dan mesec dan v tednu
PoljeObseg vrednostiOpis
Minuta0 – 59Katera minuta vsake ure se izvaja
Ura0 – 23Katera ura vsakega dne se izvaja
Dan1 – 31Kateri dan vsakega meseca se izvaja
Mesec1 – 12Kateri mesec vsakega leta se izvaja
Dan v tednu0 – 70 in 7 oba pomenita nedeljo

Vsako polje podpira naslednjo sintakso:

  • * – ujema vse vrednosti (npr. * * * * * pomeni izvajanje vsako minuto)
  • */N – izvajanje vsakih N enot (npr. */5 * * * * pomeni izvajanje vsakih 5 minut)
  • Enojno število – ujema določeno vrednost (npr. 0 9 * * 1 pomeni izvajanje ob 9:00 vsak ponedeljek)

Opomba: več vrednosti, ločenih z vejicami (npr. 1,15), in izrazi z obsegom (npr. 1-5) niso podprti; več omejitev je v spodnjih opombah.

Podprti kombinirani načini ​

Ta programska oprema ne izvaja izvornega Cron demona, temveč prevaja Cron izraze v parametre sprožilcev načrtovanih opravil Windows (schtasks.exe). Za natančno preslikavo analizator podpira le naslednjih 7 kombiniranih načinov, ki pokrivajo veliko večino scenarijev časovnih opravil:

#NačinOpisScenarij uporabe
1* * * * *Izvajanje vsako minutoNadzorna opravila, preverjanja v realnem času
2*/N * * * *Izvajanje vsakih N minutPeriodična preverjanja
3M * * * *Izvajanje v M. minuti vsake ure (npr. 3 * * * *)Opravila na uro
4M H * * *Izvajanje vsak dan ob H:M (npr. 0 3 * * *)Dnevno vzdrževanje, npr. čiščenje dnevnikov ponoči
5M H * * DOWIzvajanje ob H:M na določen dan v tednu (npr. 0 12 * * 1)Tedenska opravila, npr. varnostno kopiranje vsak ponedeljek
6M H D * *Izvajanje ob H:M na določen datum vsakega mesecaMesečna opravila, npr. ustvarjanje poročil 1. v mesecu
7M H D MON *Izvajanje ob H:M na določen datum in mesec vsako letoLetna opravila, npr. izvedba v določenem mesecu

Če izraz ne spada v zgornjih 7 načinov, ga sistem obravnava kot Unsupported cron pattern in zavrne ustvarjanje.

Opombe ​

Ker implementacija temelji na načrtovanih opravilih Windows, se Cron analizator te programske opreme razlikuje od standardnega Linux Cron na naslednjih področjih:

1. Seznami (,) in obsegi (-) niso podprti ​

Standardni Cron omogoča definiranje več diskretnih časovnih točk z vejicami (npr. 1,15,30 * * * * pomeni 1., 15. in 30. minuto) ali obsegov z vezajem (npr. 1-5 * * * * pomeni 1. do 5. minuto).

Omejitve te programske opreme: vsako polje lahko vsebuje le enojno število, zvezdico (*) ali korak (*/N); vejice in vezaji niso podprti.

2. Prosta kombinacija ni podprta ​

Standardni Cron omogoča prosto kombiniranje poljubnih polj (npr. * 3 * * * pomeni vsako minuto v uri od 3. ure), vendar ta programska oprema podpira le zgornjih 7 fiksnih načinov; izrazi zunaj tega obsega bodo zavrnjeni.

3. Razlika v časovni poravnavi pri korakih ​

V standardnem Cron se */5 * * * * strogo poravna na minute 0, 5, 10, 15... ure. Ta programska oprema ga prevede v parametre /SC MINUTE /MO 5 sistema Windows, katerega logika obdelave je šteje interval od trenutka ustvarjanja ali omogočanja opravila.

Na primer, če ob 10:02 shranite in omogočite opravilo, ki teče vsakih 5 minut, bo prvič izvedeno ob 10:07, nato ob 10:12, namesto poravnave na standardno 10:05.