PowerShell is een opdrachtregelhulpmiddel ontwikkeld door Microsoft voor het automatiseren van veelvoorkomende administratieve taken. Een script is een verzameling PowerShell-opdrachten, opgeslagen in een tekstbestand, met de extensie *.ps1. Bij het uitvoeren van een PowerShell-script leest de interpreter het bestand en voert de opdrachten sequentieel uit.
Je kunt een PowerShell-script maken met elke teksteditor (zelfs Kladblok). Maar bij voorkeur wordt aanbevolen om een PowerShell-scripteditor te gebruiken. De standaardeditor die bij Windows is inbegrepen, is de PowerShell Integrated Scripting Environment (PowerShell ISE). Het bevat handige functies zoals kleurcodering, codevoltooiing, syntaxiscontrole, debugging, automatisch opslaan, crashbescherming, enz.
Microsoft heeft een gratis cross-platform code-editor genaamd Visual Studio Code (VS Code), die beschikbaar is voor Windows, Linux en macOS. Het ondersteunt een verscheidenheid aan programmeertalen via extensies die je kunt installeren, inclusief PowerShell.
Een voordeel van Visual Studio Code is dat het de meest recente versies van PowerShell ondersteunt, terwijl de PowerShell ISE alleen tot PowerShell-versie 5.1 ondersteunt.
Hoe voer je een PowerShell-script uit (snelle handleiding)
Hier is een snelle uitleg over hoe je een PowerShell-script kunt uitvoeren. De volgende methode werkt voor PowerShell-scripts die geen vereiste parameters hebben en geen uitvoer retourneren naar de opdrachtprompt.
- Klik met de rechtermuisknop op het PowerShell-script in de Verkenner.
- Selecteer Uitvoeren met PowerShell uit het contextmenu.
- Het script zal worden uitgevoerd met een uitvoeringsbeleid van Bypass. Het uitvoeringsbeleid voor de computer of de gebruiker wordt niet gewijzigd.
Voor meer details over het schrijven en uitvoeren van PowerShell-scripts, blijf lezen!
Hoe maak je PowerShell-scripts
Er zijn een paar manieren waarop je PowerShell-scripts kunt maken:
- Met de cross-platform code-editor Visual Studio Code
- Met de PowerShell ISE
Het maken van PowerShell-scripts met Visual Studio Code
Visual Studio Code is niet standaard beschikbaar op Windows, dus het moet worden gedownload van de speciale Visual Studio-website. In ons geval moeten we de Windows-distributie downloaden, die beschikbaar is voor 64-bits, 32-bits en ARM-systemen.
Hier zijn de verschillende stappen die u moet volgen na het installeren van de app. Allereerst moet u Visual Studio Code openen vanuit het Startmenu.

Installeer de PowerShell-extensie
Open het menu Extensies door te klikken op het extensiepictogram dat hieronder wordt weergegeven, of gebruik de toetsenbordsneltoets Ctrl + Shift + X.

Typ powershell in het zoekvak, selecteer de meest gedownloade optie zoals hieronder getoond, zorg ervoor dat u de extensie downloadt die door Microsoft wordt aangeboden. Klik vervolgens op Installeren.

Wanneer de installatie is voltooid, ziet u geen bevestiging. U ziet echter dat de knop Installeren is vervangen door de opties Uitschakelen en Verwijderen.

Hoe maak je een PowerShell-script met Visual Studio Code
Om een nieuw PowerShell-script te maken, ga naar Bestand > Nieuw bestand, of gebruik de toetsenbordsneltoets Ctrl + N.

Om aan te geven dat het nieuwe bestand een PowerShell-script is, klik op Platte Tekst aan de linkerkant onderaan, of Selecteer een Taal in het scriptpaneel. Kies vervolgens voor PowerShell.

Dit activeert de PowerShell-extensie en je zult merken dat het gedrag en de functionaliteit veranderen. Allereerst zal het icoon naast de bestandsnaam veranderen in PowerShell. Ook zal de PowerShell-console starten, waar je PowerShell-opdrachten en scripts kunt uitvoeren.

Hetzelfde resultaat kan worden bereikt door het bestand op te slaan met de extensie *.ps1.
Typ de volgende opdrachten in het scriptpaneel en je zult voordelen zoals kleurcodering, automatische aanvulling van opdrachten en syntaxisaanwijzingen in actie zien:
Write-Host "This is a Visual Studio Code script" Write-Host "Writing PowerShell Scripts is fun!"

Let op: De derde regel is alleen ter illustratie, om de optie voor opdrachtaanvulling te tonen.
Om het bestand op te slaan, kun je het Bestand-menu gebruiken: Bestand > Opslaan. Je kunt ook de sneltoets Ctrl + S gebruiken.
Kies vervolgens een gemakkelijk toegankelijke locatie, geef de bestandsnaam op, zorg ervoor dat *.ps1 als de bestandsextensie is gespecificeerd, en klik op Opslaan. In dit voorbeeld sla ik het bestand op in C:\TEMP\MijnVSCodeScript.ps1.

Het uitvoeren van scripts in VS Code komt later in het artikel aan bod.
Scripts maken met de Windows PowerShell ISE
Om de PowerShell ISE te starten, klik op de Startknop (of Zoekknop) en begin PowerShell ISE in te typen. U zult de applicatie in de zoekresultaten zien met verschillende startopties. Het is altijd aan te raden om Als Administrator uit te voeren om ervoor te zorgen dat alle opdrachten correct worden uitgevoerd en niet geblokkeerd worden.

Laten we nu een script maken in de PowerShell ISE. Typ de volgende regels en merk opnieuw handige functies op zoals kleurcodering, automatische commandocomplete, syntaxishints, enz.:
Write-Host "This is a PowerShell ISE script" Write-Host "Writing PowerShell Scripts is fun!"

Opmerking: De derde regel is uitsluitend ter demonstratie om de optie voor commandocomplete te laten zien.
Laten we nu de lijst met opdrachten opslaan als een PowerShell-script. Om dit te doen, moet u op het schijfgrafiekenpictogram op de werkbalk klikken, vervolgens klikken op Bestand > Opslaan vanuit het bestandsmenu. U kunt ook de toetsencombinatie Ctrl + S gebruiken.
In het Opslaan als dialoogvenster, kies een map, geef een bestandsnaam op, specificeer de *.ps1-extensie en klik op Opslaan. In dit voorbeeld gebruik ik de volgende naam: C:\TEMP\MyPowerShellISEScript.ps1.

Scripts maken met NotePad
Het wordt niet aanbevolen om een basis-teksteditor te gebruiken om PowerShell-scripts te schrijven, maar dit is wel mogelijk. Laten we een voorbeeld nemen met NotePad
- Open NotePad en typ de volgende opdrachten:
Write-Host "This is a Notepad script" Write-Host "Writing PowerShell Scripts is fun!

- Om het script op te slaan, selecteer Bestand > Opslaan.
- In het Opslaan als dialoogvenster, kies een map en geef een bestandsnaam op met de *.ps1-extensie. In dit voorbeeld gebruik ik: C:\TEMP\MyNotepadScript.ps1.
Hoe u PowerShell-scripts uitvoert
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.
Het inschakelen van PowerShell-scripts door de uitvoeringsbeleid te wijzigen
Het uitvoeringsbeleid van PowerShell is een veiligheidsfunctie die bepaalt onder welke voorwaarden PowerShell configuratiebestanden laadt en scripts uitvoert. Het is belangrijk op te merken dat dit geen beveiligingssysteem is, aangezien uitvoeringsbeleid eenvoudig omzeild kan worden. Het helpt echter gebruikers te beschermen tegen het onbedoeld uitvoeren van scripts.
Het standaard uitvoeringsbeleid voor Windows 11 is Beperkt. Op niet-Windows-besturingssystemen is het standaard uitvoeringsbeleid Onbeperkt, en dit kan niet worden gewijzigd.
Om het huidige uitvoeringsbeleid weer te geven, gebruikt u de PowerShell-opdracht Get-ExecutionPolicy.
U kunt het uitvoeringsbeleid op Windows wijzigen met behulp van de Set-ExecutionPolicy-cmdlet:
Set-ExecutionPolicy -ExecutionPolicy <PolicyName>
De verschillende uitvoeringsbeleid worden in het volgende onderwerp besproken.
Het wijzigen van het PowerShell uitvoeringsbeleid
Op Windows kunt u het uitvoeringsbeleid instellen voor de lokale machine, de huidige gebruiker of de PowerShell-proces.
Om alle beschikbare bereiken te vermelden, gebruik de opdracht Get-ExecutionPolicy -List.
Get-ExecutionPolicy -List
De volgorde is belangrijk, dus het hoogste geconfigureerde item heeft voorrang. Als u bijvoorbeeld een uitvoeringsbeleid hebt ingesteld met een groepsbeleid, heeft dit voorrang op andere.

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. |
Om ervoor te zorgen dat PowerShell scripts kan uitvoeren, moet u de opdracht Set-ExecutionPolicy -ExecutionPolicy <PolicyName> gebruiken.
Set-ExecutionPolicy -ExecutionPolicy <PolicyName>
Standaard past deze opdracht uw gekozen beleid toe op het bereik Lokale machine. Als u een ander bereik wilt aangeven, moet u de parameter -Scope gebruiken en de naam van het bereik opgeven.
De volgende opdracht stelt bijvoorbeeld het uitvoeringsbeleid in op Onbeperkt voor de huidige gebruiker:
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUser
Het uitvoeren van een script met PowerShell
Om de PowerShell-console te openen, klik op de Start-knop (of zoekknop), typ powershell en klik op Uitvoeren als beheerder.

Om een script in de PowerShell-console uit te voeren, kunt u ofwel:
- De volledige padnaam naar het script gebruiken, zoals: C:\TEMP\MyNotepadScript.ps1
- Of alleen de scriptnaam gebruiken, vanuit de map waar het bestand zich bevindt: .\MyNotepadScript.ps1
Het uitvoeren van een PowerShell-script in Visual Studio Code
Om een script in Visual Studio Code uit te voeren, moet u eerst de applicatie starten en het eerder gemaakte scriptbestand openen (C:\TEMP\MyVSCodeScript.ps1).
- Selecteer Bestand > Openen Bestand of gebruik de toetsencombinatie Ctrl + O.

- Met de script geladen in VS Code, kun je het uitvoeren door op de Uitvoeren knop in de rechterbovenhoek te klikken, of door op F5 op je toetsenbord te drukken.
Het script wordt uitgevoerd in het consolevak, waar je de uitvoer van het script zult zien.

Een andere optie is om alleen een deel van het script uit te voeren (Uitvoeren Selectie). Dit is vaak handig als je je script aan het maken bent en je wilt controleren of delen ervan zich zoals verwacht gedragen.
- Om een selectie van het script uit te voeren, markeer het deel dat je wilt uitvoeren.
- Klik op Uitvoeren Selectie in de rechterbovenhoek van de console, of druk op F8 op je toetsenbord.
Dit keer voert VS Code alleen de uitgekozen regels code uit in het consolevak.

Een script uitvoeren in de PowerShell ISE
Het uitvoeren van scripts in de PowerShell ISE is vrij gelijkaardig.
- Start de PowerShell ISE.
- Open het script van de eerdere demonstratie (in dit geval – C:\TEMP\MyPowerShellISEScript.ps1) met behulp van Bestand > Openen, of de Openen icoon van de werkbalk, of de toetsencombinatie Ctrl + O.
- Selecteer het scriptbestand en klik op Openen.
Om het volledige script uit te voeren, gebruik de Uitvoeren knop op de werkbalk of druk op F5 op je toetsenbord. Dit zal het scriptbestand uitvoeren in het consolevak, met terugkerend resultaat.

Als je slechts een deel van het script wilt uitvoeren, markeer de sectie en selecteer Uitvoeren selectie vanuit de werkbalk, of druk op F8 op je toetsenbord. Nogmaals, PowerShell ISE voert alleen de uitgekozen regels code uit.

Het uitvoeren van een PowerShell-script vanaf de opdrachtprompt
Als *.ps1-bestanden worden geïnterpreteerd door PowerShell, kan de opdrachtprompt (CMD) niet direct werken met PowerShell-scripts. Als je een PowerShell-script in CMD wilt uitvoeren, moet je het uitvoeren door de PowerShell-proces op te roepen met de -File-parameter, zoals hieronder weergegeven:
PowerShell -File C:\TEMP\MyNotepadScript.ps1.
Conclusie
PowerShell-scripts zijn een geweldige manier om herhalende taken te automatiseren. Volg de algemene regel: “Als je iets meer dan één keer moet doen, script het,” en je kunt niet verkeerd gaan!
Gerelateerd artikel:
Source:
https://petri.com/how-to-write-and-run-a-powershell-script-file-on-windows-11/