PowerShell ist ein Befehlszeilentool, das von Microsoft zur Automatisierung gängiger Administrationsaufgaben entwickelt wurde. Ein Skript ist eine Sammlung von PowerShell-Befehlen, die in einer Textdatei mit der Erweiterung *.ps1 gespeichert sind. Beim Ausführen eines PowerShell-Skripts liest der Interpreter die Datei und führt die Befehle sequenziell aus.
Sie können ein PowerShell-Skript mit jedem Texteditor erstellen (auch NotePad). Es wird jedoch empfohlen, einen PowerShell-Skripteditor zu verwenden. Der Standardeditor in Windows ist die PowerShell Integrated Scripting Environment (PowerShell ISE). Es enthält nützliche Funktionen wie Farbcodierung, Codevervollständigung, Syntaxprüfung, Debugging, Autospeichern, Absturzschutz usw.
Microsoft bietet einen kostenlosen plattformübergreifenden Code-Editor namens Visual Studio Code (VS Code) an, der für Windows, Linux und macOS verfügbar ist. Er unterstützt eine Vielzahl von Programmiersprachen durch Erweiterungen, die Sie installieren können, einschließlich PowerShell.
Ein Vorteil von Visual Studio Code ist, dass es die neuesten Versionen von PowerShell unterstützt, während die PowerShell ISE nur bis zur Version 5.1 von PowerShell unterstützt.
Wie man ein PowerShell-Skript ausführt (Schnellstartanleitung)
Hier ist eine schnelle Anleitung, wie man ein PowerShell-Skript ausführt. Die folgende Methode funktioniert für PowerShell-Skripte, die keine erforderlichen Parameter haben und keine Ausgabe an die Befehlszeile zurückgeben.
- Klicken Sie mit der rechten Maustaste auf das PowerShell-Skript im Datei-Explorer.
- Wählen Sie im Kontextmenü Mit PowerShell ausführen.
- Das Skript wird mit einer Ausführungsrichtlinie von Bypass ausgeführt. Die Ausführungsrichtlinie für den Computer oder Benutzer wird nicht geändert.
Für weitere Details zum Schreiben und Ausführen von PowerShell-Skripten lesen Sie weiter!
Wie man PowerShell-Skripte erstellt
Es gibt ein paar Möglichkeiten, wie Sie PowerShell-Skripte erstellen können:
- Mit dem plattformübergreifenden Code-Editor Visual Studio Code
- Mit der PowerShell ISE
- Oder einem anderen Texteditor, z.B. NotePad
Erstellen von PowerShell-Skripts mit Visual Studio Code
Visual Studio Code ist nicht standardmäßig auf Windows verfügbar und muss daher von der dedizierten Visual Studio-Website heruntergeladen werden. In unserem Fall müssen wir die Windows-Distribution herunterladen, die für 64-Bit-, 32-Bit- und ARM-Systeme verfügbar ist.
Hier sind die verschiedenen Schritte, die Sie nach der Installation der App befolgen müssen. Zuerst müssen Sie Visual Studio Code über das Startmenü öffnen.

Installieren Sie die PowerShell-Erweiterung
Öffnen Sie das Erweiterungsmenü, indem Sie auf das Erweiterungssymbol klicken, wie in der Abbildung unten gezeigt, oder verwenden Sie die Tastenkombination Strg + Umschalt + X.

Geben Sie powershell in das Suchfeld ein, wählen Sie die am häufigsten heruntergeladene Option aus, um sicherzustellen, dass Sie die von Microsoft bereitgestellte Erweiterung herunterladen. Klicken Sie dann auf Installieren.

Nach Abschluss der Installation sehen Sie keine Bestätigung. Sie sehen jedoch, dass die Schaltfläche Installieren durch die Optionen Deaktivieren und Deinstallieren ersetzt wurde.

So erstellen Sie ein PowerShell-Skript mit Visual Studio Code
Um ein neues PowerShell-Skript zu erstellen, gehen Sie zu Datei > Neue Datei, oder verwenden Sie die Tastenkombination Strg + N.

Um anzugeben, dass die neue Datei ein PowerShell-Skript ist, klicken Sie auf Plain Text auf der linken unteren Seite oder Select a Language im Skriptfeld. Beide Optionen leiten Sie zum Select a Language Mode-Feld weiter. Geben Sie powershell ein und wählen Sie dann PowerShell.

Dadurch wird die PowerShell-Erweiterung ausgelöst, und Sie werden eine Veränderung im Verhalten und in der Funktionalität feststellen. Zunächst fällt auf, dass das Symbol neben dem Dateinamen zu PowerShell wechselt. Außerdem wird die PowerShell-Konsole starten, wo Sie PowerShell-Befehle und Skripts ausführen können.

Dasselbe Ergebnis kann erzielt werden, indem die Datei mit der Erweiterung *.ps1 gespeichert wird.
Geben Sie die folgenden Befehle im Skriptfeld ein und Sie werden die Vorteile wie Farbcodierung, Befehls-Autovervollständigung und Syntaxhinweise in Aktion sehen:
Write-Host "This is a Visual Studio Code script" Write-Host "Writing PowerShell Scripts is fun!"

Hinweis: Die dritte Zeile dient nur zu Demonstrationszwecken, um die Option zur Befehlsvervollständigung zu zeigen.
Um die Datei zu speichern, können Sie das Dateimenü verwenden: Datei > Speichern. Sie können auch die Tastenkombination Strg + S verwenden.
Verwenden Sie anschließend einen leicht zugänglichen Speicherort, geben Sie den Dateinamen an, stellen Sie sicher, dass *.ps1 als Dateierweiterung angegeben ist, und klicken Sie auf Speichern. In diesem Beispiel speichere ich die Datei unter C:\TEMP\MyVSCodeScript.ps1.

Das Ausführen von Skripts in VS Code wird später im Artikel behandelt werden.
Erstellen von Skripts mit der Windows PowerShell ISE
Um die PowerShell ISE zu starten, klicken Sie auf die Start-Taste (oder die Such-Taste) und beginnen Sie, „PowerShell ISE“ einzugeben. Sie werden die Anwendung in den Suchergebnissen mit verschiedenen Öffnungsoptionen sehen. Es wird immer empfohlen, Als Administrator ausführen zu verwenden, um sicherzustellen, dass alle Befehle korrekt ausgeführt werden und nicht blockiert werden.

Lassen Sie uns nun ein Skript in der PowerShell ISE erstellen. Schreiben Sie die folgenden Zeilen, und wiederum können Sie nützliche Funktionen wie Farbcodierung, Befehlseingabeautomatisierung, Syntaxhinweise usw. bemerken:
Write-Host "This is a PowerShell ISE script" Write-Host "Writing PowerShell Scripts is fun!"

Hinweis: Die dritte Zeile dient nur zu Demonstrationszwecken, um die Befehlseingabeautomatisierung zu zeigen.
Speichern wir nun die Liste der Befehle als PowerShell-Skript. Um dies zu tun, müssen Sie auf das Disketten-Symbol in der Symbolleiste klicken, dann auf Datei > Speichern im Dateimenü klicken. Sie können auch die Tastenkombination Strg + S verwenden.
Im Speichern unter Dialogfeld wählen Sie einen Ordner aus, geben Sie einen Dateinamen an, geben Sie die *.ps1 Erweiterung an und klicken Sie auf Speichern. In diesem Beispiel verwende ich den folgenden Namen: C:\TEMP\MyPowerShellISEScript.ps1.

Skripterstellung mit NotePad
Es wird nicht empfohlen, einen einfachen Texteditor zum Schreiben von PowerShell-Skripten zu verwenden, aber dies ist möglich. Nehmen wir als Beispiel NotePad.
- Öffnen Sie NotePad und geben Sie die folgenden Befehle ein:
Write-Host "This is a Notepad script" Write-Host "Writing PowerShell Scripts is fun!

- Um das Skript zu speichern, wählen Sie Datei > Speichern.
- Im Speichern unter Dialogfeld wählen Sie einen Ordner aus und geben Sie einen Dateinamen mit der *.ps1 Erweiterung an. In diesem Beispiel verwende ich: C:\TEMP\MyNotepadScript.ps1.
Wie man PowerShell-Skripts ausführt
A PowerShell script (*.ps1 file) can be run in the PowerShell console, which recognizes the *.ps1 file type and runs the commands sequentially. You may open the script as a file in code editors like the PowerShell ISE and Visual Studio Code, and run the whole script in the console pane or run only a part of it.
Wie man die Ausführungsrichtlinie von PowerShell ändert, um Skripts zu aktivieren
PowerShells Ausführungsrichtlinien sind eine Sicherheitsfunktion, die die Bedingungen steuert, unter denen PowerShell Konfigurationsdateien lädt und Skripts ausführt. Es ist wichtig zu betonen, dass dies kein Sicherheitssystem ist, da Ausführungsrichtlinien leicht umgangen werden können. Sie helfen jedoch dabei, Benutzer vor dem unbeabsichtigten Ausführen von Skripts zu schützen.
Die Standardausführungsrichtlinie für Windows11 ist Eingeschränkt. Auf nicht-Windows-Betriebssystemen ist die Standardausführungsrichtlinie Unbeschränkt, und sie kann nicht geändert werden.
Um die aktuelle Ausführungsrichtlinie anzuzeigen, verwenden Sie den PowerShell-Befehl Get-ExecutionPolicy.
Sie können die Ausführungsrichtlinie unter Windows mit dem Set-ExecutionPolicy-Cmdlet ändern:
Set-ExecutionPolicy -ExecutionPolicy <PolicyName>
Die verschiedenen Ausführungsrichtlinien werden im nächsten Thema diskutiert.
Ändern der PowerShell-Ausführungsrichtlinie
Unter Windows können Sie die Ausführungsrichtlinie für den lokalen Computer, den aktuellen Benutzer oder den PowerShell-Prozess festlegen.
Um alle verfügbaren Bereiche aufzulisten, verwenden Sie Get-ExecutionPolicy -List.
Get-ExecutionPolicy -List
Die Reihenfolge ist wichtig, sodass der höchst konfigurierte Eintrag Vorrang hat. Wenn Sie beispielsweise eine Ausführungsrichtlinie mithilfe einer Gruppenrichtlinie festgelegt haben, hat diese Vorrang vor anderen.

Policy | Description |
Restricted | The default execution policy for Windows client OSes. It does not allow ANY scripts (*.ps1 files) to be executed. Still, you may run individual commands. |
RemoteSigned | The default execution policy for Windows Server. It Allows running scripts that are created locally. Scripts downloaded from untrusted locations, like the Internet, e-mail, messengers, etc. must be digitally signed by a trusted publisher. You may use the command Unblock-File to allow a script to run on the system. |
Unrestricted | The default execution policy for non-Windows computers, and it cannot be changed. It allows unsigned scripts to run, but it shows a warning message and asks for confirmation if scripts are coming from an untrusted location. |
AllSigned | It requires all scripts running on the machine to be digitally signed by a trusted publisher, no matter if they are created locally on the machine or downloaded from the Internet. |
Bypass | It allows all scripts to run, like Unrestricted, but no confirmation is required. |
Undefined | There is no execution policy set on the specified scope. If all scopes are set as undefined, then the default execution policies are applied. |
Um PowerShell-Skripten die Ausführung zu ermöglichen, müssen Sie den Befehl Set-ExecutionPolicy -ExecutionPolicy <PolicyName> verwenden.
Set-ExecutionPolicy -ExecutionPolicy <PolicyName>
Standardmäßig wendet dieser Befehl Ihre gewählte Richtlinie auf den Lokalen Computer Bereich an. Wenn Sie einen anderen Bereich angeben möchten, müssen Sie das -Scope-Parameter verwenden und den Namen des Bereichs angeben.
Der folgende Befehl legt beispielsweise die Ausführungsrichtlinie für den aktuellen Benutzer auf Unrestricted fest:
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUser
Ausführen eines Skripts mit PowerShell
Um die PowerShell-Konsole zu öffnen, klicken Sie auf die Schaltfläche „Start“ (oder die Suchschaltfläche), geben Sie powershell ein und klicken Sie auf Als Administrator ausführen.

Um ein Skript in der PowerShell-Konsole auszuführen, können Sie entweder:
- Den vollständigen Pfad zum Skript verwenden, wie z.B.: C:\TEMP\MyNotepadScript.ps1
- Oder nur den Skriptnamen verwenden, aus dem Ordner, in dem die Datei gespeichert ist: .\MyNotepadScript.ps1
Ausführen eines PowerShell-Skripts in Visual Studio Code
Um ein Skript in Visual Studio Code auszuführen, müssen Sie die Anwendung zunächst starten und die zuvor erstellte Skriptdatei (C:\TEMP\MyVSCodeScript.ps1) öffnen.
- Wählen Sie Datei > Öffnen Datei oder verwenden Sie die Tastenkombination Strg + O.

- Mit dem Skript in VS Code können Sie es durch Klicken auf die Ausführen Schaltfläche in der oberen rechten Ecke oder durch Drücken von F5 auf Ihrer Tastatur ausführen.
Das Skript wird im Konsole-Fenster ausgeführt, in dem Sie die Ausgabe des Skripts sehen werden.

Eine weitere Option wäre, nur einen Teil des Skripts auszuführen (Auswahl ausführen). Dies ist oft hilfreich, wenn Sie Ihr Skript erstellen und bestätigen möchten, dass Teile davon wie erwartet funktionieren.
- Um eine Auswahl des Skripts auszuführen, markieren Sie den Teil, den Sie ausführen möchten.
- Klicken Sie auf Auswahl ausführen in der oberen rechten Ecke der Konsole oder drücken Sie F8 auf Ihrer Tastatur.
Diesmal führt VS Code nur die ausgewählten Codezeilen im Konsole-Fenster aus.

Ausführen eines Skripts im PowerShell ISE
Das Ausführen von Skripts im PowerShell ISE ist ziemlich ähnlich.
- Starten Sie den PowerShell ISE.
- Öffnen Sie das Skript aus der vorherigen Demonstration (in diesem Fall – C:\TEMP\MyPowerShellISEScript.ps1) unter Verwendung von Datei > Öffnen oder der Öffnen Schaltfläche aus der Symbolleiste oder der Tastenkombination Strg + O.
- Wählen Sie die Skriptdatei und klicken Sie auf Öffnen.
Um das gesamte Skript auszuführen, verwenden Sie die Ausführen Schaltfläche in der Symbolleiste oder drücken Sie F5 auf Ihrer Tastatur. Dadurch wird die Skriptdatei im Konsole-Fenster ausgeführt und das Ergebnis wird zurückgegeben.

Wenn Sie nur einen Teil des Skripts ausführen möchten, markieren Sie den Abschnitt und wählen Sie Auswahl ausführen aus der Symbolleiste oder drücken Sie F8 auf Ihrer Tastatur. Wiederum wird der PowerShell ISE nur die ausgewählten Codezeilen ausführen.

Ausführen eines PowerShell-Skripts über die Eingabeaufforderung
Wenn *.ps1-Dateien von PowerShell interpretiert werden, kann die Eingabeaufforderung (CMD) PowerShell-Skripte nicht direkt verarbeiten. Wenn Sie ein PowerShell-Skript in CMD ausführen möchten, müssen Sie es durch Aufrufen des PowerShell-Prozesses mit dem -File-Parameter ausführen, wie unten gezeigt:
PowerShell -File C:\TEMP\MyNotepadScript.ps1.
Schlussfolgerung
PowerShell-Skripte sind eine großartige Möglichkeit, wiederkehrende Aufgaben zu automatisieren. Befolgen Sie die allgemeine Regel: „Wenn Sie etwas mehr als einmal tun müssen, skripten Sie es“, und Sie können nichts falsch machen!
Verwandter Artikel:
Source:
https://petri.com/how-to-write-and-run-a-powershell-script-file-on-windows-11/