PowerShell: Argumenten

D. Leeuw

Over dit Document

Leerdoelen

Voorkennis

Argumenten

Bij scripting is het handig als een gebruiker parameters aan een script kan meegeven om het script bepaalde acties te laten uitvoeren:

.\mijnscript.ps1 -Naam "Jan" -Leeftijd 25

Via de param functie kunnen we afdwingen wat voor informatie er gegeven mag worden en in welke variabele de data geplaatst wordt:

param (
    [string]$Naam,
    [int]$Leeftijd
)

Write-Host "Hallo $Naam, je bent $Leeftijd jaar oud."

We kunnen ook afdwingen dat er iets opgegeven moet worden (mandatory):

param (
    [Parameter(Mandatory=$true)]
    [string]$Bestand
)

Om te voorkomen dat we met lege variabelen komen te zitten, kunnen we ook een default waarde opgeven:

param (
    [string]$Naam = "Onbekend"
)

Ook kunnen we een lijst opgeven van geldige waarden, als niet één van de waarden geven wordt dan geeft PowerShell een error.

param (
    [ValidateSet("Start", "Stop", "Restart")]
    [string]$Actie
)

Opdracht

  1. We gaan voor deze opdrachten werken met de uitkomsten van het PowerShell commando:

    Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion"
  2. Schrijf een PowerShell script dat via parameters de verschillende stukjes informatie produceert. We willen CurrentBuild, DisplayVersion, ProductName als losse data aan het script kunnen vragen.