/ / Geek School: Učenje korištenja cmdleta u PowerShellu

Škola Geek-a: Učenje korištenja cmdleta u PowerShell-u

Ako ste upotrijebili ipconfig ili ping kroz naredbeni redak, na pola ste puta da postanete PowerShell ninja. Zato dođite i pridružite nam se dok otkrivamo cmdlete u ovoj instalaciji Geek škole.

Provjerite naš prvi članak o uvođenju PowerShell-a i budite praćeni za ostatak naše serije cijeli tjedan.

Anatomija cmdlet-a

U prvom dijelu Serije vidjeli smo cmdlet koji je izgledao ovako:

Update-pomoć

PowerShell cmdleti imaju sintaksu glagola-imenica, kojamože se vidjeti gore. Važno je napomenuti da je imenica uvijek jednina iako cmdlet može vratiti više rezultata. Da biste vidjeli popis legalnih glagola u PowerShellu, možete koristiti cmdlet Get-Verb.

slika

Poznavanje pravnih glagola i pamćenje pravila jedninske imenice zaista pomažu u pogađanju imena cmdleta. Na primjer, pretpostavimo da to želite dobiti popis od usluge i njihov status - to je ispravno, jednostavno kao i Usluga za dobivanje. Kako mislite da bismo dobiti popis trčanja procesi - to je tačno, Get-Process će učiniti trik.

Get-Process

slika

To olakšava rad s bilo kojom tehnologijom. Na primjer, ako imate učitane Exchange cmdlete, lako bismo mogli dobiti popis poštanskih sandučića na poslužitelju koristeći:

Get-Mailbox

Međutim, postoji iznimka. Zamijenite na stranu, za sve druge naredbe specifične za tehnologiju potreban je prefiks. Na primjer, ako želimo dobiti korisnike koji su trenutno prijavljeni putem udaljene radne površine, upisali bismo:

Get-RDUserSession

Što se može vidjeti na slici ispod.

Napomena: ovaj je snimak slike snimljen na kutiji poslužitelja 2012, jer ćete tamo pronaći većinu tehnološki specifičnih modula.

slika

Prije nekog vremena pročitao sam članak Don Jonesa, Kuma PowerShela, gdje je objasnio da je Exchange isporučen prije nego što je ovaj prefiks dodan u cmdlete, tako da ih nikada nije implementirao i nikada neće.

nadimci

Još jedna značajka koju PowerShell dolazi jemogućnost više načina za pokretanje iste naredbe - pseudonima, ako hoćete. Strašna stvar o njima je ta što su u naredbeni redak uključili mnogo naredbi koje ste možda koristili, kao i neke nadimke Linuxa. Na primjer, u PowerShellu možemo dobiti unos direktorija koristeći:

Get-ChildItem

slika

Jeste li se koristili pomoću naredbenog retka? Ne brini, pokrili su te.

slika

Imate Linux pozadinu? I oni su vas tamo pokrili.

slika

Kad ste za nekoliko scenarijagodina, obično ste lijeni i počnete puno upotrebljavati pseudonime, ali to ne pomaže pridošlicama koji će čitati naš kod. Da biste vidjeli koja se naredba alias izvodi ispod haube, možete koristiti sljedeće:

Get-alias - Ime ls

slika

S druge strane, ako smatrate da je vrijeme da se pojačate igra, možete upotrijebiti parametar definicije da biste dobili sve pseudonimije za cmdlet:

Get-ChildItem - Definicija Get-ChildItem

slika

Ako potječete iz neke druge pozadine, možete dodati svoje pseudonime na sljedeći način:

New-alias - ime icanhazfilez –Value Get-ChildItem

Očito, morat ćete zamijeniti "icanhazfilez" imenom vašeg novog pseudonima i Get-ChildItem s cmdletom koji želite da se pokrene ispod haube.

slika

Jedna stvar koju treba napomenuti je da gubite sve pseudonime koje ste definirali kada zatvorite ljusku. To možete zaobići dodavanjem njihove definicije u skriptu svog profila.

Parametri skraćivanja

Windows PowerShell također vam omogućuje odstupanjenazive parametara gore do točke kada postanu dvosmisleni, to jest do točke kada PowerShell više ne može shvatiti o kojem parametru govorite. Na primjer:

Get-Service -Name "Apple Mobile Device" -ComputerName localhost

slika

Isto je kao:

Get-Service -Ne „Apple Mobile Device“ -Com localhost

slika

Ako kojim slučajem imena parametara napravite previše dvosmislenih, doći će do pogreške.

Naslijeđene naredbe

Konačno, naredbe koje znate i volite i dalje će raditi u PowerShellu.

ping www.google.com

slika

Sjetite se samo da nasljeđene aplikacije poput ping-a ispisuju niz, a često je i bolji način da se ista stvar učini pomoću PowerShell cmdleta.

slika

Umjesto da objavimo dugačak niz teksta, sada nam ostaje objekt, koji ćemo pogledati u sutrašnjem izdanju Geek škole.