I forrige uke fikk jeg en e-postmelding fra en IT-pro som nettopp hadde mistet jobben til bedriftens nedbemanning. Unødvendig å si, var han ivrig etter å finne en annen jobb, men han gjorde ’ t be meg for sysselsetting. I stedet spurte han meg hva som var det aller viktigste at han skulle fokusere på å lære akkurat nå.
Selv om dette spørsmålet høres veldig enkelt, var det faktisk ganske provoserende. Tross alt, det er så mye som skjer i det akkurat nå. Jeg tenkte på å fortelle ham å fokusere på servervirtualisering eller kanskje programvaredefinert nettverk. Til syvende og sist, fortalte jeg ham til å lære så mye som han kunne om Powershell. Powershell er brukt i de fleste av Microsoft ’ s nåværende linje med serverprodukter, og det er ingen tegn på at det kommer til å gå bort helst snart. Selv om grunnleggende administrative oppgaver kan vanligvis utføres gjennom et GUI, må administratorer ofte i dybden av Powershell for å gjøre infrastrukturen nivå konfigurasjonsendringer. Selv om dette absolutt ikke holder sant i alle tilfeller, er det blitt mer og mer vanlig å måtte utføre oppgaver gjennom Powershell.
Under en av mine besøk til Redmond en stund tilbake, hadde jeg sjansen til å prate med noen som jobbet på Exchange Server-teamet. Jeg spurte hvorfor så mange oppgaver innenfor Exchange Server måtte gjøres gjennom Powershell. Svaret jeg fikk litt overrasket meg.
Det ble forklart til meg at på noen måter, i hvilken grad Exchange Server administrasjon krever Powershell hadde å gjøre med å beskytte mindre erfarne administratorer fra seg selv. Grunnleggende administrative oppgaver kan utføres via administrasjonskonsollen, men i mange tilfeller lavt nivå konfigurasjonsendringer eller potensielt destruktive operasjoner måtte gjøres gjennom Powershell. Antakelsen var at hvis en administrator visste nok til å bruke en Powershell cmdlet, de sannsynligvis også visste nok til trygt utføre den planlagte administrative tiltak. Med andre ord, utføre en administrativ oppgave gjennom Powershell krever forsett. Du kan ’ t få deg i trøbbel ved et uhell klikke på noe (i alle fall ikke i Powershell seg selv)
ironisk vri er at det er nok av administratorer som ikke ønsker å bruke Powershell.. Jeg don ’ t si at som en måte å være nedlatende, eller for å ha fornærmet noen. Det ’ er bare det at i løpet av de siste årene har jeg snakket med og mottatte e-postmeldinger fra ganske mange administratorer som har uttrykt frustrasjon med Powershell
På noen måter jeg kan forstå frustrasjonen.. Jeg vil være den første til å innrømme at noen av blokker av kode som presenteres i TechNet-artiklene ser ut som vrøvl. Tro det eller ikke skjønt, Powershell isn ’ t nesten like vanskelig å bruke som noen av blokker av kode som vises i TechNet-artiklene kan gjøre det virke. Grunnen til at noen av Powershell eksempler som du kan finne på TechNet er så uforståelig er fordi Powershell tillater bruk av kommandoen forkortelser. For eksempel, cmdlet (uttales kommando-la) Format-List kan forkortet til FL.
cmdlet forkortelser er stor for Powershell eksperter som ønsker å holde kommandoer kort og konsis, men når du stappe sammen en lang streng for forkortede cmdlets begynner kommandostreng å se ut som en haug med tilfeldige tegn
I ’. m faktisk får litt foran meg selv. Jeg vil snakke om Powershell-cmdlet forkortelser senere i denne artikkelserien. For akkurat nå, la meg bare si at jeg har ett enkelt mål for denne artikkelserien. Fordi jeg tror at Powershell er en viktig ferdighet for Microsoft serveradministratorer, er mitt mål å lære deg det grunnleggende, og for å gjøre læringen Powershell så smertefri som jeg muligens kan.
Basic Command Syntax
Som Jeg har tidligere nevnt, Powershell er basert rundt bruken av cmdlets. En cmdlet er et verb – substantiv kombinasjon. Et verb er et ord som beskriver en handling, samtidig som et substantiv refererer til et objekt. At det å være tilfelle, er en Powershell cmdlet består av to ord. Det første ordet (verb) forteller Windows hva handlingen du vil utføre, mens det andre ordet (substantivet) forteller Windows hvilken type objekt du ønsker å utføre handlingen på.
For å gi deg et mer konkret eksempel vurdere cmdlet Clear-Host. Verbet i dette tilfellet er klart og det forteller Windows at du ønsker å slette noe. Hva må tømmes? Verten. Som sådan cmdlet slås skjermen.
Forresten, hvis du vokste opp med DOS som jeg gjorde, vil du være glad for å vite at det meste av gamle DOS-kommandoer arbeid i et Powershell miljø. For eksempel DOS-kommandoen for å tømme skjermen var CLS. CLS kommandoen kan brukes i Powershell som et alternativ til den Clear-Host kommandoen.
Hvorfor er det så mange Cmdleter?
Windows Server 2012 R2 har tusenvis av Powershell cmdlets bygget inn i operativsystemet system. Som om ikke det var nok, er Powershell utvidbar. Microsoft tilbyr moduler som legger ekstra Powershell cmdlets som lar deg utføre mer spesialiserte oppgaver. Videre Microsofts serverprodukter som er basert rundt Powershell har også sine egne sett med cmdlets. Du kan til og med utvikle dine egne cmdlets hvis du ønsker
Siden det er tusenvis av innfødte Powershell cmdlets og mange flere cmdlets som kan legges inn på Powershell, kan man ’. T hjelp, men å føle litt skremt og å lure på hvorfor Microsoft har laget et så stort antall cmdlets.
Det er et par forskjellige grunner til at så mange cmdlets eksisterer. Den første grunnen er at Microsoft ønsket å holde ting enkelt. Jeg vet det høres sprøtt, men høre meg ut.
Hvis du har jobbet med noen av de innfødte Windows kommandolinjeverktøy (kjørbare filer, ikke Powershell), har du sannsynligvis vet at noen av verktøyene er veldig komplisert å bruk. En kommandolinje kjørbar kanskje har en lang liste av brytere som kan brukes i et forsøk på å oppnå en rekke forskjellige oppgaver. Dette er nettopp den slags ting som Microsoft prøvde å unngå når de skapte Powershell
I stedet for å lage et sett av komplekse, multi-purpose kommandoer, Microsoft ’. Visjon for Powershell cmdlets var å skape super lette kommandoer som gjøre en ting, og en ting bare. Siden hver cmdlet utfører en meget bestemt oppgave, kan cmdletene knyttes sammen for å utføre mer komplekse, multi-trinn prosesser.
Nå riktignok mange Powershell cmdlets støtter bruk av valgfrie parametere. Likevel, de fleste av cmdlets er ganske grei å bruke.
Den andre grunnen til at det er så mange innfødte Powershell cmdlets er på grunn av måten de grunnleggende syntaks fungerer. Som du vil huske, er hver cmdlet består av et verb og et substantiv. Hvert verb har flere bruksområder, som gjør hvert substantiv. For eksempel finnes det dusinvis av cmdlets som bruker Get verb. Med andre ord, verb og substantiver utformet for å være modulær, slik at de kan brukes sammen i forskjellige kombinasjoner. Hver kombinasjon utgjør en annen cmdlet. At ’ s hvorfor det er så mange cmdlets
Konklusjon
I denne artikkelen har jeg brukt ganske mye tid på å snakke om den grunnleggende syntaks brukes i Powershell cmdlets og årsakene bak at syntaks. . I del 2, jeg vil begynne å vise deg hvordan du faktisk bruke noen Powershell cmdlets. Anmeldelser