Jos olet käyttänyt ipconfigia tai pingiä komentokehotteen kautta, olet puolestasi PowerShell-ninja. Joten tulkaa ja liittyä meihin, kun löydämme cmdlettejä tässä Geek-koulun asennuksessa.
Muista tutustua PowerShellin ensimmäiseen artikkeliin ja pysytellä viritettynä koko sarjassamme koko viikon ajan.
Sarjan ensimmäisessä osassa näimme cmdlet, joka näytti jotain tällaista:
Update-ohje
PowerShell-cmdletit ovat Verb-Noun syntaksia, joka voidaan nähdä edellä. Tärkeää on huomata, että substantiivi on aina singulaarinen, vaikka cmdlet saattaa palauttaa useamman kuin yhden tuloksen. Voit tarkastella luetteloa oikeudellisista verbistä PowerShellissä käyttämällä Get-Verb-cmdlet-arvoa.
Juridisten verbien tunteminen ja yhden nimellisäänen säännön muistaminen todella auttavat ymmärtämään cmdlet-nimiä. Oletetaan esimerkiksi, että haluat saada luettelo palvelut ja heidän asemansa - se on oikein, niin helppoa kuin Get-Service. Miten luulet meidän tekevän saada luettelo käynnistä prosessit - Se on oikein, Get-Process tekee tempun.
Get-prosessin
Tämä tekee siitä todella helppoa työskennellä minkä tahansa tekniikan kanssa. Jos sinulla esimerkiksi oli Exchange-cmdletit ladattu, voisimme helposti saada luettelon postilaatikoista palvelimella käyttämällä:
Get-Mailbox
On kuitenkin olemassa poikkeus. Vaihto syrjään, kaikki muut teknologiakohtaiset komennot edellyttävät etuliitettä. Jos esimerkiksi halusimme saada käyttäjiä, jotka ovat tällä hetkellä kirjautuneena etätietokoneen kautta, kirjoita:
Get-RDUserSession
Mikä näkyy alla olevassa kuvakaappauksessa.
Huomaa: Tämä kuvakaappaus on otettu Server 2012 -ruudussa, sillä se on josta löydät useimmat teknologiakohtaiset moduulit.
Joitakin aikoja sitten luin artikkelin Don Jones, PowerShell-kummisetä, jossa hän selitti, että Exchange lähetti ennen kuin tämä etuliite lisättiin cmdletteihin, joten se ei koskaan toteuttanut niitä eikä koskaan.
Toinen ominaisuus PowerShell mukana on kyky olla useita tapoja käyttää samaa komentoa - aliaksia, jos haluat. Näennäinen asia on se, että ne sisälsivät useita komentoja, joita olisit käyttänyt komentokehotteessa, sekä joitain Linux-aliaksia. Esimerkiksi PowerShellissä voimme saada hakemistoluettelon käyttämällä:
Get-ChildItem
Käytetään komentokehotteen käyttämiseen? Älä huoli, he ovat sinut peitossa.
Onko Linux-tausta? He ovat sinut peitellä sinne.
Kun olet parhaillaan ohjelmoinut parin vuoden ajan, sinulla on tapana saada laiska ja alkaa käyttää aliaksia paljon, mutta tämä ei auta uusia tulokkaita, jotka tulevat lukemaan koodimme. Jos haluat nähdä, millä komennolla alias on käynnissä huuvan alla, voit käyttää seuraavaa:
Get-Alias -Name ls
Toisaalta, jos tuntuu, että on aika korottaa pelisi, voit käyttää määritysparametria saadaksesi kaikki cmdletin aliakset:
Get-ChildItem -määritelmä Get-ChildItem
Jos tulet muusta taustasta, voit lisätä omat aliasesi seuraavasti:
New-Alias -Name icanhazfilez -Value Get-ChildItem
On selvää, että sinun on korvattava "icanhazfilez" uudella aliaksella ja Get-ChildItem-nimellä cmdletin kanssa, jonka haluat sen toimivan hupun alla.
Yksi asia on huomata, että menetät kaikki aliakset, jotka olet määritellyt, kun suljet kuoren. Voit kiertää tämän lisäämällä määritelmän profiilikirjoitukseen.
Windows PowerShellin avulla voit myös katkaista parametrien nimitykset siihen pisteeseen asti, jolloin ne ovat epäselviä, toisin sanoen siihen pisteeseen saakka, jolloin PowerShell ei enää pysty selvittämään, mistä parametrista puhut. Esimerkiksi:
Get-Service-nimi "Apple Mobile Device" -sovellusnimi localhost
On sama kuin:
Get-Service -App-mobiililaite -Com localhost
Jos mahdolliset parametrit ovat liian epäselviä, saat virheen.
Lopuksi, tiedät ja rakastat komennot toimivat edelleen PowerShellissä.
ping www.google.com
Muista vain, että vanhat sovellukset, kuten ping, tuottavat merkkijonoa, ja on usein parempi tapa tehdä sama asia PowerShell-cmdletin avulla.
Sen sijaan, että annettaisiin pitkä merkkijono tekstille, meillä on nyt esine, josta tutustutaan Geek-koulun huomisessa versiossa.