Domača » kako » Geek šola se nauči uporabljati ukazne mize v PowerShell

    Geek šola se nauči uporabljati ukazne mize v PowerShell

    Če ste v ukaznem pozivu uporabili ipconfig ali ping, ste na pol poti, da postanete PowerShell ninja. Pridite in se nam pridružite, ko odkrijemo cmdletke v tej namestitvi Geek šole.

    Bodite prepričani, da preverite naš prvi članek, ki uvaja PowerShell, in ostanite z nami za preostanek naše serije ves teden.

    Anatomija Cdmdleta

    V prvem delu serije smo videli cmdlet, ki je bil podoben temu:

    Posodobitev-pomoč

    Ukazne vrstice PowerShell imajo sintakso Verb-Noun, ki jo lahko vidite zgoraj. Pomembno je omeniti, da je samostalnik vedno edinstven, čeprav lahko cmdlet vrne več kot en rezultat. Če si želite ogledati seznam pravih glagolov v PowerShell, lahko uporabite ukaz »cmdlet« Get-Verb.

    Poznavanje pravnih glagolov in zapomnitev pravila samostalnega samostalnika v resnici pomaga ugibati imena ukazov »cmdlet«. Recimo, da želite na primer dobite seznam storitve in njihov status - to je prav, tako enostavno kot Get-Service. Kako misliš, da bi dobite seznam poteka procesov - prav, Get-Process bo naredil trik.

    Get-Process

    Zaradi tega je zelo enostavno delati s katero koli tehnologijo. Če ste na primer naložili ukaze »cmdlet« za Exchange, bi lahko zlahka dobili seznam poštnih predalov na strežniku z:

    Get-Mailbox

    Vendar pa obstaja izjema. Zamenjajte, vse druge ukaze, specifične za tehnologijo, zahtevajo predpono. Če želimo na primer uporabnike, ki so trenutno prijavljeni prek oddaljenega namizja, vnesti:

    Get-RDUserSession

    Kar je prikazano na spodnji sliki.

    Opomba: Ta posnetek zaslona je bil izdelan v polju Server 2012, saj boste našli večino modulov, specifičnih za tehnologijo.

    Pred časom sem prebral članek, ki ga je napisal Don Jones, boter PowerShell, kjer je pojasnil, da je Exchange dostavljen, preden je bila ta predpona dodana cmdletom, zato jih ni nikoli uporabila in nikoli ne bo.

    Vzdevki

    S funkcijo PowerShell prihaja tudi možnost, da imate več načinov izvajanja istega ukaza - aliasov, če želite. Strašna stvar pri njih je, da so vključevali številne ukaze, ki ste jih morda uporabili v ukaznem pozivu, kot tudi nekatere vzdevke Linuxa. V programu PowerShell lahko na primer dobimo imenik z uporabo:

    Get-ChildItem

    Uporabil je ukazni poziv? Ne skrbi, ti si jih pokril.

    Imate ozadje Linuxa? Tudi tam so vas pokrili.

    Ko ste že nekaj let skriptirali, se nagibate k lenobi in veliko začnete uporabljati vzdevke, vendar to ne pomaga novincem, ki bodo prebrali našo kodo. Če želite videti, kateri ukaz psevdonim teče pod pokrovom, lahko uporabite naslednje:

    Get-Alias ​​-Name ls

    Po drugi strani pa, če menite, da je čas, da začnete igro, lahko uporabite parameter definicije, da dobite vse vzdevke za cmdlet:

    Get-ChildItem -Definition Get-ChildItem

    Če prihajate iz drugega ozadja, lahko dodate svoje vzdevke tako, da naredite naslednje:

    New-Alias ​​-Name icanhazfilez -Value Get-ChildItem

    Očitno boste morali zamenjati »icanhazfilez« z imenom vašega novega vzdevka in Get-ChildItem z ukazom »cmdlet«, ki ga želite izvajati pod pokrovom..

    Opozoriti je treba, da izgubite vse vzdevke, ki ste jih definirali, ko zaprete ukazno lupino. To lahko dosežete tako, da dodate svojo definicijo v svoj skript profila.

    Parametri obrezovanja

    Windows PowerShell omogoča tudi obrezovanje imen parametrov do trenutka, ko postanejo dvoumne, to je do točke, ko PowerShell ne more več ugotoviti, o katerem parametru govorite. Na primer:

    Get-Service -Imena 'Apple Mobile Device' - Računalniško ime localhost

    Je enako kot:

    Get-Service -Na 'Apple Mobile Device' -Com localhost

    Če naključno naredite imena parametrov preveč dvoumna, boste dobili napako.

    Zapuščeni ukazi

    Nazadnje, ukazi, ki jih poznate in imate radi, bodo še vedno delovali v programu PowerShell.

    ping www.google.com

    Zapomnite si, da starejše aplikacije, kot je ping, ustvarjajo niz, in pogosto je boljši način, da to naredite z ukazom »PowerShell«..

    Namesto da oddajamo dolg niz besedila, imamo zdaj še objekt, ki ga bomo pogledali v jutrišnji izdaji šole Geek.