Hva er PowerShell-kode?
PowerShell er et oppgaveautomatiseringsrammeverk og en kommandolinjeskall utviklet av Microsoft. Det er bygget på .NET-plattformen og designet for å automatisere systemadministrasjonsoppgaver gjennom skript. PowerShell-kode, ofte lagret i filer med utvidelsen .ps1, består av cmdlets, pipelines, variabler, løkker og betingelser. Med PowerShell kan administratorer effektivt håndtere Windows-systemer, Active Directory, Exchange, Azure og mye mer. Plattformen er åpen kildekode under MIT-lisensen, noe som gjør den tilgjengelig på tvers av plattformer som Windows, Linux og macOS.

Grunnleggende om PowerShell-skripting
For å komme i gang med PowerShell-kode må du forstå noen sentrale konsepter. Cmdlets er lette kommandoer som utfører spesifikke funksjoner, som Get-Service eller Set-Location. Pipeline-operatoren | lar deg sende output fra en cmdlet som input til en annen, noe som muliggjør kraftig databehandling. Variabler i PowerShell starter med $-tegn, og du kan bruke løkker som for, foreach, while, samt betingelser som if, else og switch. For å lære mer om en spesifikk cmdlet, bruker du Get-Help cmdletnavn, som gir detaljert dokumentasjon. En god ressurs for nybegynnere er Microsofts offisielle dokumentasjon, som du kan finne på Microsoft Learn.

PowerShell-skript kan kjøres interaktivt i konsollen eller som automatiserte oppgaver via Task Scheduler. Det er viktig å merke seg at som standard er utføringspolicyen satt til Restricted, noe som forhindrer kjøring av skript. Du kan endre dette med Set-ExecutionPolicy for å tillate signerte eller lokale skript. For mer informasjon om grunnleggende funksjonalitet, se PowerShell-oversikten på Microsoft Learn.

Vanlige cmdlets og deres bruk
Det finnes hundrevis av cmdlets i PowerShell, men noen er spesielt nyttige for daglig administrasjon. Her er en tabell over vanlige cmdlets og deres funksjoner:

| Cmdlet | Beskrivelse |
|---|---|
| Get-Service | Henter status for tjenester på systemet. |
| Get-EventLog | Tilgang til Windows-hendelseslogger. |
| Get-ADUser | Spør Active Directory etter brukerobjekter. |
| Get-ADComputer | Henter datamaskinobjekter fra Active Directory. |
| Set-ExecutionPolicy |





