Gennemse funktioner i Windows PowerShell-scripts

Fuldført

En funktion er en blok af kode, der kan genbruges. Du kan bruge funktioner til at udføre gentagne handlinger i et script i stedet for at placere den samme kode i scriptet flere gange. Hvis du f.eks. har et stort script, der kan udføre flere handlinger, i stedet for at placere kode, der logfører data på disken med hver handling, kan du have én funktion, der logfører data på disken. Derefter kaldes logføringsfunktionen, hver gang der udføres en handling. Hvis du senere vil ændre logføringsfunktionen, skal den kun ændres ét sted.

Når du kalder en funktion, kan du overføre data til den. Du bruger Param() blok for en funktion på samme måde som for et script. Efter erklæringen for funktionen skal du indsætte Param() blok og definitionerne for eventuelle variabler, der forventes at blive overført til funktionen. Følgende eksempel er en funktion, der bruger en Param() blok til at acceptere et computernavn:

Function Get-SecurityEvent {
   Param (
      [string]$ComputerName
   ) #end Param
   Get-EventLog -LogName Security -ComputerName -$ComputerName -Newest 10
}

Hvis du vil kalde funktionen i et script, skal du bruge følgende syntaks:

Get-SecurityEvent -ComputerName LON-DC1

I det forrige eksempel overføres værdien for parameteren -Computer til variablen $ComputerName i funktionen. Get-EventLog forespørger derefter de seneste 10 hændelser fra sikkerhedsloggen på computeren og viser dem på skærmen. Hvis disse hændelser skal placeres i en variabel og er tilgængelige til brug i resten af scriptet, skal du bruge følgende syntaks:

$securityEvents = Get-SecurityEvent -ComputerName LON-DC1