10Aug
Jei naudodami komandų eilutę naudojate ipconfig arba ping, jūs esate pusiaukelėje, kad taptumėte "PowerShell ninja".Taigi įeikite ir prisijunkite prie mūsų, kai atrinksime "Geek School" diegimo cmdlet.
Būtinai perskaitykite mūsų pirmąjį straipsnį, kuriame pristatoma "PowerShell", ir visą savaitę palaikykite ryšį su likusia mūsų serija.
Cmdlet
anatomija Pirmojoje serijos dalyje matėme cmdlet, kuris atrodė panašiai:
atnaujinimo Pagalba
"PowerShell" cmdlet turi verbos-vardo sintaksę, kurią galima pamatyti aukščiau. Svarbu pažymėti, kad daiktavardis visada yra vienaskaitos, nors cmdlet gali grąžinti daugiau nei vieną rezultatą.Norėdami peržiūrėti PowerShell teisinių veiksmažodžių sąrašą, galite naudoti "Get-Verb" cmdlet.
Teisinių veiksmažodžių suvokimas ir vienos taisyklės vardų priminimas tikrai padeda atsikratyti cmdletų pavadinimų.Pavyzdžiui, tarkime, kad norite gauti paslaugų sąrašą ir jų būseną - tai tiesa, tai taip pat lengva, kaip Get-Service. Kaip manote, kad gaus procesų sąrašą - tai tiesa, "Get-Process" atliks triuką.
Get-Process
Dėl to labai lengva dirbti su bet kokia technologija. Pavyzdžiui, jei turite įkeltą "Exchange" cmdlet, galėtume lengvai gauti serveryje esančių pašto dėžučių sąrašą naudodami:
Get-Mailbox
Tačiau yra išimtis. Keisdami nuorodą, visos kitos konkrečios technologijos komandos turi turėti prefiksą.Pavyzdžiui, jei norime gauti vartotojus, kurie šiuo metu yra prisijungę per nuotolinį darbalaukį, mes turėtume įvesti:
Get-RDUserSession
, kurį galima pamatyti paveikslėlyje žemiau.
Pastaba: šis ekrano kopija buvo įtraukta į "Server 2012" langelį, nes čia rasite daugumą konkrečių technologijų modulių.
Aš seniai perskaičiau straipsnį "PowerShell" krikštatėvisas Don Jonesas, kuriame jis paaiškino, kad "Exchange" buvo išsiųstas prieš tai, kai šis prefiksas buvo pridėtas prie cmdlet, taigi jis niekada jų neįgyvendino ir niekada nebus.
slapyvardžiai
Dar viena funkcija "PowerShell" - tai galimybė turėti kelis būdus, kaip paleisti tą pačią komandą - slapyvardžius, jei norite. Nuostabus dalykas yra tai, kad jie įtraukti daug komandų, kurias galėjote naudoti komandinėje eilutėje, taip pat kai kurias "Linux" aliases. Pavyzdžiui, "PowerShell" galime gauti katalogų sąrašą naudodami:
Get-ChildItem
Naudojamas komandų eilutės naudojimui? Nesijaudinkite, jie jums padengti.
Turite Linux foną?Jie taip pat padengė ten.
Kai scenarijus buvo keletą metų, jūs linkęs gauti tingą ir pradėti naudoti daugybę slapyvardžių, tačiau tai nepadeda naujokams, kurie ketina perskaityti mūsų kodą.Norėdami pamatyti, kokia komanda turi slapyvardį po gaubtu, galite naudoti šią funkciją:
Get-Alias-Name ls
Kita vertus, jei manote, kad laikas pradėti žaidimą, naudokite apibrėžimo parametrą, kad gautumėtevisi pavadinimai, skirti cmdlet:
Get-ChildItem -Definition Get-ChildItem
Jei jūs kilęs iš kito fono, galite pridėti savo slapyvardžius atlikdami šiuos veiksmus:
New-Alias -Name icanhazfilez -Value Get-ChildItem
Akivaizdu,turėsite pakeisti "icanhazfilez" su savo naujo slapyvardžio pavadinimu ir Get-ChildItem su cmdlet, kurią norite paleisti po gaubtu.
Vienas dalykas, į kurį reikia atkreipti dėmesį, yra tai, kad jūs prarasite visas slapyvardžius, kuriuos apibrėžėte uždarę apvalkalą.Galite išspręsti šią problemą pridėdami savo apibrėžimą į savo profilio scenarijų.
Sutrumpinimo parametrai
"Windows PowerShell" taip pat leidžia sutrumpinti parametrų pavadinimus iki taško, kuriame jie tampa dviprasmiški, ty iki taško, kuriame "PowerShell" daugiau nebegalima suprasti, apie kurį parametrą jūs kalbate. Pavyzdžiui:
Get-Service -Pavadinimas "Apple Mobile Device" -ComputerName localhost
Tas pats:
Get-Service -Na "Apple Mobile Device" -Com localhost
Jei bet kokiu atveju parametrų pavadinimai yra per daug dviprasmiškigaus klaidą
palikimo komandos
Galiausiai komandos, kurias pažįstate ir mylėsite, vis tiek dirbs "PowerShell".
ping www.google.com
Tiesiog nepamirškite, kad senosios programinės įrangos, pvz., "Ping", išveda eilutę, ir dažnai yra geresnis būdas tai padaryti naudojant "PowerShell" cmdlet.
Vietoj to, kad išvedė ilgą teksto eilutę, mes dabar paliekami objekto, kurį mes pažvelgsime į rytoj Geeko mokyklos leidimą.