Articles

Hvad er Po ?ershell?

  • 05/22/2020
  • 5 minutter på at læse
    • j
    • s
    • s

PowerShell er en cross-platform opgave, automation og configuration management framework, der består afen kommandolinjeshell og scripting sprog. I modsætning til de fleste skaller, der accepterer og returnerer tekst,er Ponetershell bygget oven på .net Common Language Runtime (CLR) og accepterer og returnerer.NETobjects., Denne grundlæggende ændring bringer helt nye værktøjer og metoder til automatisering.

Output er objekt-baseret

i Modsætning til traditionelle kommando-line interfaces, PowerShell cmdlets er designet til at håndtere genstande.Et objekt er struktureret information, der er mere end blot en streng af tegn, der vises på thescreen. Kommando output altid bærer ekstra oplysninger, som du kan bruge, hvis du har brug for det.

Hvis du tidligere har brugt tekstbehandlingsværktøjer til at behandle data, vil du opdage, at de opfører sig forskelligt, når de bruges i Po .ershell., I de fleste tilfælde behøver du ikke tekstbehandlingsværktøjer til at udtrække specifikke oplysninger. Du får direkte adgang til dele af dataene ved hjælp af standard Po .ershell objectsynta..

kommandofamilien er udvidelig

grænseflader somcmd.exe giver dig ikke mulighed for direkte at udvide det indbyggede kommandosæt. Du kan oprette eksterne kommandolinjeværktøjer, der kører i cmd.exe. Men disse eksterne værktøjerhar ikke tjenester, såsom Hjælpeintegration. cmd.exe ved ikke automatisk, at disse eksterne værktøjer er gyldige kommandoer.,

kommandoerne i Po .ershell er kendt som cmdlets. Du kan bruge hver cmdlet separat, men deresmagt realiseres, når du kombinerer dem til at udføre komplekse opgaver. Ligesom mange skaller giver Po .ershelldu adgang til filsystemet på computeren. Po .ershell-udbydere giver dig adgang til andredata butikker, såsom registreringsdatabasen og certifikatbutikkerne, så nemt som du får adgang til filsystemet.

Du kan oprette dine egne cmdlet-og funktionsmoduler ved hjælp af kompileret kode eller scripts. Moduler kan addcmdlets og udbydere til skallen., PowerShell understøtter også scripts, der er analoge til UNIXshell scripts og cmd.exe batch-filer.

understøttelse af kommandoaliaser

Po .ershell understøtter aliaser for at henvise til kommandoer med alternative navne. Aliasing giver brugerne mulighed for withexperience i andre skaller til at bruge fælles kommando-navne, som de allerede kender til similaroperations i PowerShell.

Aliasing knytter et nyt navn til en anden kommando. For eksempel har Po .ershell en internfunktion ved navn Clear-Host, der rydder outputvinduet., Du kan enten skrive cls ellerclear alias ved en kommandoprompt. Po .ershell fortolker disse aliaser og kører funktionenClear-Host.

Denne funktion hjælper brugerne med at lære Po .ershell. For det første har de fleste cmd.exe og Uni. – brugere en storpertoire af kommandoer, som brugerne allerede kender ved navn. Po .ershell-ækvivalenterne må ikke producereidentiske resultater. Resultaterne er dog tæt nok til, at brugerne kan arbejde uden at vide detpo .ershell kommandonavn., “Muskelhukommelse” er en anden vigtig kilde til frustration, når man lærer en nykommando shell. Hvis du har brugt cmd.exe i årevis, kan du skrive kommandoen cls til at rydde skærmen. Uden aliaset for Clear-Host modtager du en fejlmeddelelse og ved ikke, hvad du skal gøre for at rydde output.

PowerShell håndterer console input og display

Når du skriver en kommando i PowerShell altid behandler command-line input direkte. Po .ershell formaterer også det output, du ser på skærmen., Denne forskel er signifikant, fordi denreducerer det arbejde, der kræves af hver cmdlet. Det sikrer, at du altid kan gøre tingene på samme mådemed enhver cmdlet. Cmdlet-udviklere behøver ikke at skrive kode for at analysere kommandolinjeargumenterne eller formatere output.traditionelle kommandolinjeværktøjer har deres egne ordninger til at anmode om og vise Hjælp. Somecommand-line værktøjer, brug /? for at udløse Hjælpe display; andre bruger -? /H, eller endda//., Nogle vil vise Hjælp i et GUI vindue, snarere end i konsollen display. Hvis du bruger den forkerte parameter, kan værktøjet ignorere det, du skrev, og begynde at udføre en opgave automatisk.Da Po .ershell automatisk analyserer og behandler kommandolinjen, -? parameter altidbetyder “Vis mig hjælp til denne kommando”.

Bemærk

Hvis du kører et grafisk program i Po .ershell, åbnes vinduet for applikationen.Po .ershell griber kun ind, når du behandler den kommandolinjeindgang, du leverer, eller applikationenoutput returneres til konsolvinduet., Det påvirker ikke, hvordan applikationen fungerer internt.

Po .ershell har en rørledning

rørledninger er uden tvivl det mest værdifulde koncept, der bruges i kommandolinjegrænseflader. Når det anvendesordentligt, reducerer rørledningerne indsatsen ved at bruge komplekse kommandoer og gør det lettere at se arbejdsstrømmen. Hver kommando i en pipeline overfører sin output, punkt for punkt, til den næste kommando. Kommandoer behøver ikke at håndtere mere end et element ad gangen. Resultatet er reduceret ressourceforbrug ogevnen til at få output med det samme.,

den notation, der anvendes til rørledninger, svarer til den notation, der anvendes i andre skaller. Ved første øjekast er detkan ikke være tydeligt, hvordan rørledninger er forskellige i Po .ershell. Selvom du ser tekst på skærmen,Po .ershell rør objekter, ikke tekst, mellem kommandoer.,

For eksempel, hvis du bruger Out-Host cmdlet at tvinge en side-by-side visning af output fromanother kommando, output ligner normal tekst, der vises på skærmen, brudt op intopages:

Get-ChildItem | Out-Host -Paging

Personsøger også nedsætter CPU-udnyttelse, fordi behandling overførsler til Out-Host cmdlet når ithas en komplet side klar til at blive vist. De cmdlets, der går forud for det i rørledningen, pause udførelsenindtil Næste side af output er tilgængelig.,

objekter i pipeline

Når du kører en cmdlet i Po .ershell, ser du tekstudgang, fordi det er nødvendigt at repræsentereobjekter som tekst i et konsolvindue. Teksten output kan ikke vise alle egenskaberne for theobject bliver output.

Overvej for eksempel Get-Location cmdlet. Tekstudgangen er et resum.af oplysninger, ikke enfuldstændig repræsentation af objektet returneret af Get-Location. Overskriften i output tilføjesved den proces, der formaterer dataene til skærmvisning.,

Get-Location
Path----C:\

Rør output til Get-Member cmdlet viser oplysninger om det objekt, der returneres afGet-Location.

Get-Location | Get-Member

Get-Location returnerer et PathInfo-objekt, der indeholder den aktuelle sti og andre oplysninger.

Indbyggede hjælpesystem

der Ligner Unix man sider, PowerShell indeholder detaljeret hjælp, artikler, der forklarer PowerShellconcepts og kommando syntaks., Bruge Get-Help-cmdlet til at vise disse artikler på commandprompt eller få vist den senest opdaterede versioner af disse artikler i PowerShell documentationonline.

for at lære mere om Po .ershell, se afsnittet Learning Po .ershell på dette .ebsted.