Wie man PowerShell-Skripte mit dem Windows Task Scheduler ausführt – Flemming’s Blog

Der Windows Task Scheduler kann ein sehr nützliches Tool sein, um Ihre PowerShell-Skripte beim Start, bei der Anmeldung, nach einem Zeitplan oder anderen Ereignissen auszuführen.

Dies ist eine Schritt-für-Schritt-Anleitung, wie Sie dies in Windows 10 tun können, aber die Schritte in dieser Anleitung gelten für alle modernen Windows-Client- und Windows-Server-Betriebssysteme. Windows Task Schedule ist ein standardmäßig in Windows integriertes Programm, sodass keine zusätzliche Softwareinstallation erforderlich ist.

So gehen Sie vor

  • Starten Sie den Windows Task Scheduler, indem Sie danach suchen oder (START+R) taskschd.msc ausführen.
  • Klicken Sie mit der rechten Maustaste auf Task Scheduler Library und wählen Sie dann Create Task…. Es erscheint ein Popup-Fenster mit den Registerkarten Allgemein, Auslöser, Aktionen, Bedingungen und Einstellungen.

In der Registerkarte „Allgemein“

  • In der Registerkarte Allgemein geben Sie der Aufgabe einen Namen, indem Sie das Feld Name ausfüllen.
  • Kreuzen Sie unter „Sicherheitsoptionen“ die Option „Ausführen, unabhängig davon, ob der Benutzer angemeldet ist oder nicht“ an
  • Kreuzen Sie unter „Mit höchsten Rechten ausführen“ an

In der Registerkarte „Auslöser“

In der Registerkarte „Auslöser“ haben Sie viele Optionen, wann diese Aufgabe ausgeführt werden soll, aber in diesem Beispiel verwende ich die Option „Nach Zeitplan“

  • Wählen Sie „Neu“ und dann „Nach Zeitplan“ unter „Beginn der Aufgabe“:
  • Hier können Sie auswählen, was Ihren Bedürfnissen entspricht, aber es gibt zwei wichtige Dinge zu beachten. Erstens müssen Sie unten Aktiviert auswählen und zweitens müssen Startzeit und -datum in der Zukunft liegen. Wenn die Startzeit bei der Erstellung der Aufgabe überschritten wird, wird die Aufgabe nie ausgeführt, und sie wird auch nie wieder ausgeführt. Jedes Mal, wenn Sie die Aufgabe neu konfigurieren, müssen Sie auch die Zeit in der Zukunft festlegen.
  • Klicken Sie auf OK
Beispiel für einen Auslöser, der jeden Tag alle 10 Minuten ausgeführt wird

Wählen Sie auf der Registerkarte „Aktionen“

  • auf der Registerkarte „Aktion“ die Option „Neu“ und geben Sie Folgendes ein:
    Programm/Skript: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
    Dies ist der Link zu Ihrer powershell.exe-Datei, auch wenn Sie eine neuere Version haben, befindet sie sich im v1.0-Ordner.
    Argumente hinzufügen (optional):
    -noprofile -executionpolicy bypass -file "C:\powershell_script\test.ps1" (durch Pfad zur Skriptdatei ersetzen).
    Der -noprofile-Parameter startet PowerShell ohne Profile
    Der -executionpolicy bypass-Parameter umgeht alle Beschränkungen, die durch die Ausführungsrichtlinie auferlegt werden, dies sollte sicher sein, wenn Sie Ihren Code kennen.
    Der -file-Parameter ist zum Öffnen einer Datei. (Ihre .ps1-Skriptdatei)
  • Klicken Sie auf OK. Sie werden aufgefordert, die Anmeldeinformationen für den Benutzer einzugeben, der das Skript ausführen soll. Dieser Benutzer sollte über administrative Rechte verfügen.

Testen der Aufgabe

Ein guter Test, um zu sehen, ob es funktioniert, ist ein einfaches Skript, das das aktuelle Datum und die Uhrzeit in eine Textdatei ausgibt.

Get-Date >> "c:\powershell_script\testlogg.txt"
Beispiel für einen erfolgreichen Lauf
Share

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.