Geeki kool, mis õpib kasutama Cmdleti PowerShellis
Kui olete käsurea kaudu kasutanud ipconfigi või pingit, oled sa pooleldi jõudnud PowerShell ninjaks. Nii et tule ja liitu meiega, kui avastame selle Geek kooli installeerimise cmdlete.
Kontrollige kindlasti meie esimest artiklit, mis tutvustab PowerShelli ja viibige üle kogu meie seeria kogu nädala jooksul.
Cmdlet'i anatoomia
Seeria esimeses osas nägime cmdletit, mis nägi välja midagi sellist:
Update-Help
PowerShelli cmdletidel on verb-nimisõna, mida saab näha ülalpool. Oluline on märkida, et nimisõna on alati ainsus, kuigi cmdlet võib enam kui ühe tulemuse tagastada. PowerShelli juriidiliste verbide loendi nägemiseks saate kasutada cmdleti Get-Verb.
Õigete verbide tundmine ja ainsuse nimisõna reeglite meelde jätmine aitab tõesti cmdleti nimesid ära arvata. Oletame näiteks, et soovite saada loend teenuseid ja nende staatus - see on õige, nii lihtne kui Get-Service. Kuidas sa arvad saada jooksva nimekirja protsessid - see on õige, Get-Process teeb trikki.
Get-protsess
See muudab iga tehnoloogiaga töötamise väga lihtsaks. Näiteks, kui teil olid laaditud Exchange'i cmdletid, saame serverist postkastide loendi hõlpsasti saada, kasutades järgmist:
Saada postkast
Siiski on olemas erand. Vahetage kõrvale kõik teised tehnoloogiaga seotud käskud. Näiteks kui me soovime, et kaugtöölaua kaudu praegu sisse logitud kasutajad, kirjutaksime:
Get-RDUserSession
Mis on näha alloleval pildil.
Märkus: See ekraanipilt võeti serveri 2012 kasti, sest sealt leiad enamiku tehnoloogiaspetsiifilisi mooduleid.
Mõni aeg tagasi lugesin ma PowerShelli ristiisa Don Jonesi artikli, kus ta selgitas, et enne selle eesliite lisamist cmdlet'ile saadeti Exchange, nii et see ei rakendanud neid kunagi ja mitte kunagi.
Varjunimed
Teine funktsioon PowerShell kaasas on võime omada mitmeid võimalusi sama käsu käitamiseks - varjunimed, kui soovite. Hämmastav asi neist on see, et nad sisaldasid paljusid käske, mida olete võinud kasutada käsureale, ning mõned Linuxi varjunimed. Näiteks PowerShellis saame kataloogide nimekirja kasutades:
Get-ChildItem
Kasutatakse käsurea kasutamiseks? Ära muretse, nad on suletud.
Kas teil on Linuxi taust? Nad on sinna ka kaetud.
Kui olete olnud paar aastat skriptimine, kipub sa laiskuma hakama ja kasutama varjunimesid palju, kuid see ei aita uustulnukaid, kes kavatsevad meie koodi lugeda. Et näha, millist käsku alias töötab kapoti all, saate kasutada järgmist:
Get-Alias -Nimi ls
Teisest küljest, kui tunnete, et on aeg oma mängu üles astuda, saate kasutada määratlusparameetrit, et saada kõik cmdleti varjunimed:
Get-ChildItem -määratlus Get-ChildItem
Kui te tulete mõnest teisest taustast, saate lisada oma varjunimed, tehes järgmist:
Uus-Alias -Nimi icanhazfilez -Väärtus Get-ChildItem
Ilmselt peate asendama „icanhazfilez” oma uue aliasega ja Get-ChildItemiga cmdletiga, mida soovite kapoti all hoida.
Üks asi, mida tuleb märkida, on see, et kaotate kõik varjunimed, mille olete määranud kesta sulgemisel. Seda saab saada, lisades nende määratluse oma profiili skripti.
Kärpimisparameetrid
Windows PowerShell võimaldab ka parameetrite nimesid kärpida kuni punktini, kus need muutuvad ebaselgeks, st kuni punktini, kus PowerShell ei saa enam aru saada, millist parameetrit te räägite. Näiteks:
Get-Service -Nimi 'Apple Mobile Device' - arvuti nimi localhost
On sama nagu:
Get-Service -Na 'Apple Mobile Device' -Comi kohalik asukoht
Kui muudate parameetrite nimed liiga ebamääraseks, saate vea.
Vanemad käsud
Lõpuks töötavad PowerShellis ka teie teada olevad käsud ja armastus.
ping www.google.com
Pea meeles, et pärandrakendused nagu ping väljund string ja sageli on parem viis teha sama asja PowerShelli cmdleti abil.
Selle asemel, et koostada pikk tekstirida, jääme nüüd objektile, mida vaatleme homme Geek kooli väljaandes.