PowerShell hat viele verschiedene Ebenen vonSicherheit, die verhindert, dass böswillige Skripte und Befehle ausgeführt werden. Standardmäßig können Sie beispielsweise kein Skript ausführen, das Sie aus dem Internet heruntergeladen haben, es sei denn, Sie ändern die PowerShell-Ausführungsrichtlinie. Eine weitere Sicherheitsmaßnahme verhindert, dass Sie ein Skript ausführen, indem Sie darauf doppelklicken. PS1-Skripts können nicht mit PowerShell verknüpft werden. Sie können ein Skript nur ausführen, indem Sie mit der rechten Maustaste darauf klicken und die Ausführungsoption auswählen. Durch Doppelklicken wird es im Editor geöffnet. Dies ist eine gute Sicherheitsmaßnahme, aber ärgerlich, wenn ein PowerShell-Skript ausgeführt werden soll, wenn eine geplante Aufgabe ausgeführt wird. Die Arbeit ist einfach. Sie können ein Stapelskript verwenden, um PowerShell-Skripts automatisch auszuführen.
Batch-Skript
Im Folgenden finden Sie das Stapelskript, das Sie benötigen, um PowerShell-Skripts unter Windows 10 automatisch auszuführen. Jedes PowerShell-Skript benötigt ein eigenes Stapelskript.
Syntax
@ECHO OFF PowerShell.exe -Command "Path to script" PAUSE
Ersetzen Sie "Pfad zum Skript" durch den tatsächlichen Pfad zum PowerShell-Skript, das Sie ausführen möchten. Betrachten Sie das folgende Beispiel.
Beispiel
@ECHO OFF PowerShell.exe -Command "C:Reminder-ScriptsMilkBuy-Milk.ps1" PAUSE
Öffnen Sie den Editor und fügen Sie das Skript ein. Speichern Sie die Datei mit der Erweiterung .bat.
Diese Batch-Dateien öffnen sichPowerShell und führt dann das Skript aus, auf das Sie verwiesen haben. Sie können weiterhin nicht auf ein PowerShell-Skript auf Ihrem Desktop doppelklicken und es automatisch in PowerShell ausführen lassen. Die aktuelle Datei öffnet ein Eingabeaufforderungsfenster und zeigt die Meldung "Drücken Sie eine beliebige Taste, um fortzufahren" an. Wenn Sie eine Taste drücken, wird nur dann das PowerShell-Skript ausgeführt. Wenn Sie es vorziehen, dass das Skript ausgeführt wird, ohne dass Sie eingreifen müssen, bearbeiten Sie das obige Skript und entfernen Sie die Zeile "PAUSE". Es sollte so aussehen;
@ECHO OFF PowerShell.exe -Command "Path to script"
Taskplaner- und PowerShell-Skripte
Wir gehen davon aus, dass Sie automatisch einePowerShell-Skript als Aktion für eine geplante Aufgabe. Um dies zu erreichen, müssen Sie zuerst ein entsprechendes Batch-Skript erstellen, wie oben gezeigt, um das PowerShell-Skript auszuführen. Wenn Sie als Nächstes eine geplante Aufgabe erstellen, wählen Sie das Stapelskript unter der Aktion aus, die als Reaktion auf einen Trigger ausgeführt werden soll. Dadurch wird das PowerShell-Skript ausgeführt.
Wir haben hier jedoch den Taskplaner als Beispiel verwendetWenn Sie eine andere Automatisierungs-App verwenden, müssen Sie weiterhin das Batch-Skript aufrufen. Die einzige Ausnahme besteht darin, dass die von Ihnen verwendete Automatisierungs-App PowerShell öffnen und dann auf das PowerShell-Skript verweisen kann.
Bemerkungen