Hvordan kjøre dine egne Powershell script /cmdlets
Som standard har Microsoft hindret driften av tilpassede Powershell script, aka cmdlets, ved å sette Powershell "ExecutionPolicy" til "Begrenset". Dette kan endres enkelt.
Du kan endre ExecutionPolicy for Powershell script /cmdlets ved å kjøre Powershell-kommando Set-ExecutionPolicy.
For å utdype alternativene for denne kommandoen, bare å kjøre følgende i Powershell:
Set-ExecutionPolicy -ExecutionPolicy -
Personlig foretrekker jeg å sette ExecutionPolicy til «RemoteSigned"?. Dette tillater meg å kjøre egne skript, men hindrer usignerte skript fra andre fra å kjøre:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
Test dette slik: Opprett en ny Powershell script på skrivebordet. Høyreklikk på skrivebordet, New > Tekstdokument. Name it test.ps1
Høyreklikk test.ps1 og velg Rediger. Det bør åpne opp med Powershell ISE (Integrated Scripting Environment). Skriv inn følgende i den øverste ruten.
Echo "! Hello World"
start-søvn 10
Lagre det med Ctrl + S, og lukke den
Nå åpner opp Powershell, bytt til skrivebordet og prøve å kjøre skriptet:
cd "$ env: brukerprofil \\ Desktop".
\\ test.ps1
Deretter endrer din ExecutionPolicy til "RemoteSigned" og prøv igjen.
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
\\ test.ps1
Legg merke til at skriptet /cmdlet er referert bruker ". \\". Du kan også bruke hele banen, men kan ikke kjøre det ved bare å skrive inn navnet (veldig Unix som, eh?)
Legg også merke til bruken av. "$ Env: brukerprofil" for å representere banen til brukeren profil. I den klassiske Windows Command Processor, var dette representert med bare "% brukerprofil%".
Til slutt, vær oppmerksom på at dette ikke vil fungere som indikert hvis du ikke er i den lokale administratorgruppen. Det er faktisk en beste praksis for å unngå daglig bruk av en konto som er i den lokale administratorgruppen, så dette kan være tilfelle for deg. For å omgå det, rett og slett starte Powershell som administrator for å sette henrettelsen politikk. Se her.
Anmeldelser