Skip to content

Task Scheduler Funktionsübersicht

Der Task Scheduler (Aufgabenplaner) dient dazu, wiederkehrende Aufgaben in WSL zu automatisieren und manuelle Wartungsarbeiten zu vermeiden. Er bietet eine visuelle Verwaltungsoberfläche, mit der Sie geplante Aufgaben erstellen und verwalten können, ohne sich komplexe Befehlszeilenparameter merken zu müssen.

Beispielszenarien für diese Funktion:

  • Regelmäßiges Sichern von WSL-Distributionen
  • Ausführen benutzerdefinierter Skripte oder Befehle

Alle Aufgaben werden zur zentralen Verwaltung und Ansicht unter dem Pfad \WSLDashboard\UserTasks\ im Windows Aufgabenplaner gesammelt. Sie können den Echtzeit-Status der Aufgaben (Bereit / Wird ausgeführt / Deaktiviert) in der Oberfläche einsehen.

Community-Skripte

Sie können Beispielskripte (Sicherung von Distributionen) aus dem Community-Repository herunterladen, um schnell loszulegen:

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

Dies ist ein von der Community betriebenes Code-Repository. Pull Requests sind willkommen, um Skripte beizutragen oder Best Practices zu teilen.

Befehl ausführen

Befehlskonfiguration

Jede geplante Aufgabe kann mit einem Befehl (Skript oder ausführbare Datei) konfiguriert werden, der folgende Optionen unterstützt:

EinstellungBeschreibung
BefehlPfad zum Skript oder zur ausführbaren Datei. Unterstützt die Formate .bat, .ps1, .cmd, .exe, .py. Verwenden Sie die Schaltfläche "Durchsuchen", um eine Datei auszuwählen.
ArgumenteZusätzliche Argumente, die an den Befehl übergeben werden, optional.
Mit Administratorrechten ausführenWenn aktiviert, wird die Aufgabe mit den höchsten Berechtigungen ausgeführt, geeignet für Vorgänge, die eine UAC-Erhöhung erfordern.

Aufgabenoperationen

Nachdem Sie eine Aufgabe erstellt haben, können Sie die folgenden Operationen ausführen:

AktionBeschreibung
Jetzt ausführenDie Aufgabe sofort zur Ausführung zwingen, unabhängig von Zeitplanregeln.
Aktivieren/DeaktivierenDen automatischen Zeitplan der Aufgabe anhalten oder fortsetzen.
LöschenDie Aufgabe aus dem Aufgabenplaner entfernen.

Zeitplanregeln

Cron-Ausdruck

Die Aufgabenplanung verwendet den standardmäßigen 5-Felder-Cron-Ausdruck, um Ausführungsregeln zu definieren:

Minute Stunde Tag Monat Wochentag
FeldBereichBeschreibung
Minute0 - 59Die Minute der Stunde, in der ausgeführt wird
Stunde0 - 23Die Stunde des Tages, in der ausgeführt wird
Tag1 - 31Der Tag des Monats, an dem ausgeführt wird
Monat1 - 12Der Monat des Jahres, in dem ausgeführt wird
Wochentag0 - 7Wochentag (0 und 7 stehen beide für Sonntag)

Jedes Feld unterstützt die folgende Syntax:

  • * — Entspricht allen Werten (z. B. bedeutet * * * * * jede Minute)
  • */N — Alle N Einheiten (z. B. bedeutet */5 * * * * alle 5 Minuten)
  • Einzelne Zahl — Entspricht einem bestimmten Wert (z. B. bedeutet 0 9 * * 1 jeden Montag um 9:00 Uhr)

Hinweis: Kommagetrennte Mehrfachwerte (wie 1,15) und Bereichsausdrücke (wie 1-5) werden nicht unterstützt. Weitere Einschränkungen finden Sie unter Hinweise.

Unterstützte Kombinationsmuster

Diese Software führt keinen nativen Cron-Daemon aus. Stattdessen werden Cron-Ausdrücke in Windows Task Scheduler (schtasks.exe) Triggerparameter übersetzt. Für eine genaue Zuordnung unterstützt der Parser nur die folgenden 7 Kombinationsmuster, die die meisten Szenarien geplanter Aufgaben abdecken:

#MusterBeschreibungAnwendungsfall
1* * * * *Jede Minute ausführenÜberwachungs-, Echtzeit-Erkennungsaufgaben
2*/N * * * *Alle N Minuten ausführenPeriodische Prüfaufgaben
3M * * * *Zur Minute M jeder Stunde ausführen (z. B. 3 * * * *)Stündliche Aufgaben
4M H * * *Täglich um H:M ausführen (z. B. 0 3 * * *)Tägliche Wartung, z. B. Protokolle um Mitternacht bereinigen
5M H * * DOWAn einem bestimmten Wochentag um H:M ausführen (z. B. 0 12 * * 1)Wöchentliche Routineaufgaben, z. B. Datensicherung jeden Montag
6M H D * *An einem bestimmten Tag des Monats um H:M ausführenMonatliche Aufgaben, z. B. Berichte am 1. erstellen
7M H D MON *In einem bestimmten Monat und Tag um H:M ausführenJährliche Aufgaben, z. B. in einem bestimmten Monat ausführen

Wenn der Ausdruck keinem der oben genannten 7 Muster entspricht, wird das System ihn als Unsupported cron pattern ablehnen.

Hinweise

Da die Implementierung auf dem Windows Task Scheduler basiert, unterscheidet sich der Cron-Parser dieser Software in folgenden Punkten vom standardmäßigen Linux-Cron:

1. Listen (,) und Bereiche (-) werden nicht unterstützt

Standard-Cron erlaubt die Definition mehrerer diskreter Zeitpunkte durch Kommas (z. B. 1,15,30 * * * * bedeutet in den Minuten 1, 15 und 30) oder Bereiche durch Bindestriche (z. B. 1-5 * * * * bedeutet die Minuten 1 bis 5).

Einschränkung dieser Software: Jedes Feld darf nur eine einzelne Zahl, einen Asterisk (*) oder einen Schrittwert (*/N) enthalten. Kommas und Bindestriche werden nicht unterstützt.

2. Freie Kombinationen werden nicht unterstützt

Standard-Cron erlaubt beliebige Kombinationen von Feldern (z. B. bedeutet * 3 * * * jede Minute während der 3. Stunde). Diese Software unterstützt jedoch nur die oben aufgeführten 7 festen Muster. Ausdrücke außerhalb dieses Bereichs werden abgelehnt.

3. Zeitliche Ausrichtungsunterschiede bei Schrittmustern

In Standard-Cron ist */5 * * * * streng auf die Minuten 0, 5, 10, 15... ausgerichtet. Diese Software übersetzt dies in den Windows-Parameter /SC MINUTE /MO 5. Windows berechnet das Intervall ab dem Zeitpunkt der Erstellung oder Aktivierung der Aufgabe.

Wenn Sie beispielsweise um 10:02 eine Aufgabe speichern und aktivieren, die alle 5 Minuten ausgeführt werden soll, wird sie zuerst um 10:07 ausgeführt, dann um 10:12, anstatt auf die Standard-Uhrzeit 10:05 ausgerichtet zu sein.