Hvordan definerer du en PowerShell-funksjon som krever høyde?
PowerShell kan være ekstremt nyttig for mange daglige oppgaver som det er, men hvis du trenger å justere noen funksjoner med litt sikkerhet i tankene, så hvordan definerer du en funksjon slik at den krever høyde? Dagens SuperUser Q & A innlegg har svaret på en nysgjerrig leser spørsmål.
Dagens Spørsmål & Svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en fellesskapsdrevet gruppering av Q & A-nettsteder.
Spørsmålet
SuperUser-leser Vlastimil ønsker å vite hvordan man definerer en PowerShell-funksjon som krever høyde:
Siden jeg ikke finner noen alternativer til Linux sudo forhøyningskommando, har jeg følgende spørsmål. Hvordan definerer jeg en PowerShell-funksjon som krever høyde, som ved aktivering av en UAC-ledetekst på min Windows 8.1 Pro, 64-biters system? For eksempel, si at jeg kjører følgende funksjon:
Med følgende resultater:
For å være helt klar, hvis jeg kjører PowerShell som "bruker", kjør du førstnevnte funksjon system-sjekk, Jeg vil at funksjonen skal løfte for å kunne utføre kommandoen (jeg vil at UAC-meldingen skal vises).
Hvordan definerer du en PowerShell-funksjon som krever høyde?
Svaret
SuperUser-bidragsyter Ashton har svaret for oss:
Å kjøre en bestemt kommando fra et forhøyet vindu:
For eksempel:
Slik kjører du et bestemt skript fra et forhøyet vindu:
Å kjøre en hel PowerShell-sesjon som ber om UAC:
En funksjon å returnere $ Sann eller $ False hvis det nåværende vinduet kjører med forhøyede tillatelser:
For å sikre at et skript bare kjøres som Admin, legg dette til i begynnelsen:
I PowerShell v4.0 kan ovennevnte forenkles ved å bruke en #Requires uttalelse:
Kilde: Kjør med forhøyede tillatelser [SS64.com]
Har du noe å legge til forklaringen? Lyder av i kommentarene. Vil du lese flere svar fra andre tech-savvy Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her.