taskschd.msc ·
schtasks ·
Get-ScheduledTask ·
New-ScheduledTask ·
Triggers ·
Actions
Die Aufgabenplanung (Task Scheduler) automatisiert wiederkehrende Aufgaben – von einfachen Skripten bis zu komplexen Systemwartungen.
taskschd.msc öffnet die grafische Aufgabenplanung – das zentrale Tool zum Erstellen, Verwalten und Überwachen von geplanten Aufgaben.
| Methode | Beschreibung |
|---|---|
| Win + R → taskschd.msc | Schnellster Weg (Run-Dialog) |
| Systemsteuerung → Verwaltung | Über die Systemsteuerung |
| Rechtsklick "Dieser PC" → Verwalten | Über die Computerverwaltung |
| cmd → taskschd.msc | Aus der Eingabeaufforderung |
schtasks ist das Kommandozeilen-Tool für die Aufgabenplanung – ideal für Skripte, Remote-Verwaltung und Automatisierung.
| Befehl | Beschreibung |
|---|---|
| /query | Alle Aufgaben oder eine bestimmte Aufgabe anzeigen |
| /create | Neue Aufgabe erstellen |
| /change | Vorhandene Aufgabe ändern |
| /delete | Aufgabe löschen |
| /run | Aufgabe sofort ausführen |
| /end | Laufende Aufgabe beenden |
| /tn | Name der Aufgabe (Task Name) |
| /tr | Programm/Skript, das ausgeführt wird (Task Run) |
| /sc | Zeitplan (Schedule): daily, weekly, monthly, onstart, onlogin |
| /st | Startzeit (Start Time) |
/ru SYSTEM und /rl HIGHEST führen Sie die Aufgabe mit Systemrechten und höchsten Berechtigungen aus – wichtig für Wartungsaufgaben.
PowerShell bietet moderne, objektorientierte Cmdlets für die Aufgabenplanung – ideal für komplexe Automatisierungen und Skripte.
| Cmdlet | Beschreibung |
|---|---|
| Get-ScheduledTask | Vorhandene Aufgaben abrufen |
| Register-ScheduledTask | Neue Aufgabe registrieren (erstellen) |
| Unregister-ScheduledTask | Aufgabe löschen |
| Start-ScheduledTask | Aufgabe sofort starten |
| Stop-ScheduledTask | Laufende Aufgabe stoppen |
| Enable-ScheduledTask | Aufgabe aktivieren |
| Disable-ScheduledTask | Aufgabe deaktivieren |
| Set-ScheduledTask | Aufgabe ändern (konfigurieren) |
| New-ScheduledTaskAction | Action-Objekt für Aufgabe erstellen |
| New-ScheduledTaskTrigger | Trigger-Objekt für Aufgabe erstellen |
Get-ScheduledTask filtern, sortieren oder in andere Formate exportieren.
Trigger bestimmen, wann eine Aufgabe ausgeführt wird – zeitbasiert oder ereignisbasiert.
| Trigger | schtasks /sc | PowerShell | Beschreibung |
|---|---|---|---|
| Täglich | daily | -Daily | Jeden Tag zur angegebenen Zeit |
| Wöchentlich | weekly | -Weekly | An bestimmten Wochentagen |
| Monatlich | monthly | -Monthly | An bestimmten Tagen im Monat |
| Beim Systemstart | onstart | -AtStartup | Bei jedem Systemstart |
| Bei Anmeldung | onlogon | -AtLogOn | Bei Benutzeranmeldung |
| Bei Leerlauf | onidle | -AtIdle | Wenn System im Leerlauf ist |
| Einmalig | once | -Once | Einmalige Ausführung |
| Ereignisgesteuert | event | -Event | Bei bestimmten Ereignissen in der Ereignisanzeige |
Actions definieren, was ausgeführt wird – ein Programm, ein PowerShell-Skript, ein Batch-Befehl oder eine E-Mail.
| Action | schtasks /tr | PowerShell | Beschreibung |
|---|---|---|---|
| Programm ausführen | "C:\app.exe" | -Execute "app.exe" | Führt eine ausführbare Datei aus |
| PowerShell-Skript | "powershell.exe -File script.ps1" | -Execute "powershell.exe" -Argument "-File script.ps1" | Führt ein PowerShell-Skript aus |
| Batch/CMD-Befehl | "cmd.exe /c backup.cmd" | -Execute "cmd.exe" -Argument "/c backup.cmd" | Führt einen CMD-Befehl aus |
| E-Mail senden | Nur über GUI | Nur über GUI | Sendet eine E-Mail (veraltet) |
| Nachricht anzeigen | Nur über GUI | Nur über GUI | Zeigt ein Meldungsfenster an |
-ExecutionPolicy Bypass hinzufügen, um die Ausführung zu ermöglichen – oder die ExecutionPolicy global konfigurieren.
Fehlerbehebung – überprüfen Sie den Status, die letzte Ausführung und Ergebniscodes von Aufgaben.
taskschd.msc
schtasks
Get-ScheduledTask
/sc daily
/tr
LastTaskResult
schtasks /create /tn "Backup" /tr "script.ps1" /sc daily /st 02:00 ·
Get-ScheduledTask -TaskName "Backup"