Skip to content

Uppgiftsschema ​

Task Scheduler (Aktivitetshanteraren) används för att automatisera periodiska uppgifter i WSL, så att du slipper upprepade manuella underhållsarbeten. Det erbjuder ett visuellt hanteringsgränssnitt, så att du kan skapa och hantera schemalagda uppgifter utan att behöva memorera komplexa kommandoradsparametrar.

Exempelscenarier för denna funktion:

  • Schemalagda säkerhetskopior av distributioner i WSL
  • Köra anpassade skript eller kommandon

Alla uppgifter samlas under sökvägen \WSLDashboard\UserTasks\ i Windows Aktivitetshanteraren för enkel central visning och hantering. Du kan se uppgiftsstatus i realtid i gränssnittet (redo / körs / avaktiverad).

Community-skriptarkiv ​

Du kan ladda ner exempelskript (säkerhetskopiering av distributioner) från communityarkivet nedan för att komma igång snabbt:

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

Detta är ett användardrivet kodarkiv; du är välkommen att skicka in Pull Requests för att bidra med skript eller dela bästa praxis.

Köra kommandon ​

Kommandokonfiguration ​

Varje schemalagd uppgift kan konfigureras med det kommando som ska köras (skript eller körbar fil), med följande alternativ:

KonfigurationspostBeskrivning
Kommando att köraSökvägen till skriptet eller körbara filen som ska köras; stödjer format som .bat, .ps1, .cmd, .exe, .py. Du kan välja filen via knappen "Bläddra".
KommandoparametrarExtra parametrar som skickas till kommandot, valfritt.
AdministratörsbehörighetOm markerat körs uppgiften med högsta rättigheter; lämplig för operationer som kräver UAC-förhöjning.

Uppgiftsoperationer ​

Efter att uppgiften skapats kan du utföra följande operationer:

OperationBeskrivning
Kör nuTvingar uppgiften att köras omedelbart, oavsett schemaläggningsregler.
Aktivera/avaktiveraPausa eller återuppta uppgiftens automatiska schemaläggning.
Ta bortTar bort uppgiften från Aktivitetshanteraren.

Schemaläggningsregler ​

Cron-uttryck ​

Uppgiftsschemat använder standard Cron-uttryck med 5 fält för att definiera körningsregler, med följande format:

minut timme dag månad veckodag
FältIntervallBeskrivning
Minut0 - 59Vilken minut av varje timme
Timme0 - 23Vilken timme av varje dag
Dag1 - 31Vilken dag av varje månad
Månad1 - 12Vilken månad av varje år
Veckodag0 - 70 och 7 betyder båda söndag

Varje fält stödjer följande syntax:

  • * – matchar alla värden (t.ex. * * * * * betyder köra varje minut)
  • */N – köra var N:e enhet (t.ex. */5 * * * * betyder köra var 5:e minut)
  • Ett enskilt nummer – matchar ett specifikt värde (t.ex. 0 9 * * 1 betyder varje måndag kl. 9:00)

Observera: komma-separerade flervärden (som 1,15) och intervalluttryck (som 1-5) stöds inte; se Observera nedan för fler begränsningar.

Stödda kombinationsmönster ​

Denna programvara kör ingen inbyggd Cron-daemon, utan översätter Cron-uttryck till triggerparametrar för Windows schemalagda uppgifter (schtasks.exe). För korrekt mappning stödjer parsern hårdkodat endast följande 7 kombinationsmönster, som täcker de flesta schemaläggningsscenarier:

#MönsterBeskrivningTillämpningsscenario
1* * * * *Kör varje minutÖvervakning, realtidsdetekteringsuppgifter
2*/N * * * *Kör var N:e minutPeriodiska kontrolluppgifter
3M * * * *Kör på minut M av varje timme (t.ex. 3 * * * *)Uppgifter på heltimmar
4M H * * *Kör varje dag kl. H:M (t.ex. 0 3 * * *)Dagligt underhåll, t.ex. rensa loggar på natten
5M H * * DOWKör varje vecka på specifik veckodag kl. H:M (t.ex. 0 12 * * 1)Veckovisa rutiner, t.ex. säkerhetskopiera data varje måndag
6M H D * *Kör varje månad på specifikt datum kl. H:MMånadsuppgifter, t.ex. generera rapporter den 1:a varje månad
7M H D MON *Kör varje år på specifik månad och datum kl. H:MÅrsuppgifter, t.ex. köra under en specifik månad

Om ett uttryck inte tillhör ovanstående 7 mönster behandlar systemet det som Unsupported cron pattern och vägrar att skapa det.

Observera ​

Eftersom implementeringen är baserad på Windows schemalagda uppgifter skiljer sig denna programvaras Cron-parser från standard Linux-Cron på följande sätt:

1. Listor (,) och intervall (-) stöds inte ​

Standard Cron tillåter definition av flera diskreta tidpunkter via komma (som 1,15,30 * * * * för minut 1, 15 och 30), eller intervall via bindestreck (som 1-5 * * * * för minut 1 till 5).

Denna programvaras begränsning: varje fält kan bara innehålla ett enskilt nummer, stjärna (*) eller steg (*/N); komma och bindestreck stöds inte.

2. Fria kombinationer stöds inte ​

Standard Cron tillåter fri kombination av fält (som * 3 * * * för varje minut inom timmen kl. 3 på natten), men denna programvara stödjer endast de 7 fasta mönstren ovan; uttryck utanför detta intervall avvisas.

3. Tidsavvikelse vid stegmönster ​

I standard Cron är */5 * * * * strikt justerad till klockans minuter 0, 5, 10, 15.... Denna programvara översätter detta till Windows-parametern /SC MINUTE /MO 5; Windows-logiken beräknar intervallet från det ögonblick uppgiften skapas eller aktiveras.

Om du till exempel sparar och aktiverar en uppgift som körs var 5:e minut kl. 10:02, körs den första gången kl. 10:07, sedan kl. 10:12, istället för att vara justerad till standardklockans 10:05.