Funktionen definierst du mit function Name { param(...) ... }. Parameter mit Typ, Standardwert und [Parameter(Mandatory)] machen sie robust. Fehler fängst du mit try/catch/finally; setze $ErrorActionPreference = 'Stop', damit Fehler tatsächlich ausgelöst werden. Mit Write-Error und throw meldest du eigene Fehler.
Skripte sollten Cmdlet-Konventionen folgen (Verb-Substantiv).
function Get-Gruss {
param(
[Parameter(Mandatory)] [string]$Name,
[string]$Ausruf = "Hallo"
)
return "$Ausruf, $Name!"
}
Get-Gruss -Name "Mia"
$ErrorActionPreference = 'Stop'
try {
Get-Content ./gibtsnicht.txt
} catch {
Write-Host "Fehler: $($_.Exception.Message)"
}Merke
param()definiert ParameterMandatoryerzwingt Angabentry/catchmit$ErrorActionPreference = 'Stop'
Aufgabe
Schreibe eine Funktion `Get-Quadrat` mit typisiertem Parameter.