Automatische Tasks unter Windows 10
In diesem Beitrag zeige ich wie man automatische Tasks unter Windows 10 erstellt und wie dieses Service generell funktioniert. Ich werde dabei praktisch zeigen wie man das dynDNS PowerShell Script aus meinem letzten Tutorial zu Windows 10 fernsteuern stündlich ausführt.
Automatische Tasks unter Windows 10
Jedes Betriebssystem hat eine Implementierung um mit wiederholten Prozessen umzugehen. Unter Linux und Unix Systemen ist dieses Programm als Crontab bekannt, in dem so genannte Cronjobs angelegt werden. Das sind Aufträge (zum Beispiel Programm- oder Scriptaufrufe die an bestimmten Zeitpunkten automatisch ausgeführt werden.
Unter Windows 10 ist das die Aufgabeplanung. Diese findet man unter der Computerverwaltung, einfach danach suchen! Um nun eine neue Aufgabe zu erstellen wählen wir aus der Aufgabenplanung den Punkt „Aufgabe erstellen…“ aus. Leider ist die Aufteilung des Menüs in eine linke und eine rechte Menüebene super unübersichtlich.
Aufgabe erstellen
Eine Aufgabe besteht aus einem Namen und einer Beschreibung. Es macht Sinn diese Werte klug zu wählen, erstellt man viele Aufgaben wird die Liste sonst schnell unübersichtlich. Im nächsten Reiter finden wir bereits die wichtigste Information: den Trigger. Dort definieren wir wann die Aktion ausgeführt werden soll:
Mein dynDNS Script soll einmal pro Stunde laufen, deshalb definiere ich auf der höchsten Ebene „Täglich“. Mit dem Datum könnten wir den Beginn noch in die Zukunft verlegen, mit dem aktuellen Datum oder einem in der Vergangenheit beginnt die Ausführung sofort. In den erweiterten Einstellungen definieren wir dann noch die Wiederholung jede Stunde für einen Tag (wird dann am nächsten Tag wieder gemacht). Die Checkbox „Aktiviert“ bedeutet, dass diese Aufgabe aktuell aktiv ist.
Die Aktion
Die zweite wichtige Einstellung ist die Aktion. Also ein Programm oder Script, dass ausgeführt werden soll. Durch Parameter können wir dieses noch erweitern. In meinem Fall wird die PowerShell vom .NET Core ausgeführt mit dem Parameter:
1 | -ExecutionPolicy Bypass C:\Tools\dynDNS.ps1 |
Zum einen ist das die Scriptdatei die ausgeführt werden soll, zum Anderen ein zusätzlicher Parameter. Ohne dem ExecutionPolicy Bypass endet der Scriptaufruf mit der Fehlermeldung:
1 | PowerShell Script cannot be loaded not digitally signed |
Das ist Schutzmechanismus von Windows, damit man nicht einfach Scripte ausführen und das System kaputt machen kann. Über den Parameter können wir diesen außerhalb vom Script für die Shell deaktivieren. Dieser Fehler zeigt: testet immer eure Scripten bevor ihr die Aufgabe plant. Ansonsten läuft diese zwar, bringt aber nichts und ihr seht keine Fehlermeldung.
Fazit
In diesem Artikel habe ich euch kurz und knapp erklärt wie die Aufgabenplanung unter Windows 10 funktioniert und anhand eines Beispiels aus der Praxis diese umgesetzt. Automatische Tasks sind unter Windows 10 super einfach zu erstellen. Die Fehlersuche kann aufgrund fehlender Ausgaben schwer sein. Testet deshalb immer eure auszuführenden Aktionen vor der Planung der Aufgabe manuell.