Geek iskola, aki megtanulja, hogy használja a csipeszeket a PowerShell-ben
Ha az ipconfig vagy ping parancsot használta a parancssorban, akkor félúton leszel, hogy PowerShell ninja legyen. Tehát gyere és csatlakozz hozzánk, amikor felfedezzük a cmdleteket ebben a Geek Iskola telepítésében.
Ügyeljen arra, hogy nézze meg az első cikkünket, amely bemutatja a PowerShell-et, és hetekig tartsa a sorozat többi részét.
A cmdlet anatómiája
A sorozat első részén egy cmdletet láttunk, amely ilyesmi nézett ki:
Update Súgó
A PowerShell cmdlet-eknek a Verb-Noun szintaxisa van, amely a fentiekben látható. Fontos megjegyezni, hogy a főnév mindig egyedi, bár a cmdlet több eredményt is eredményezhet. A PowerShell-ben található jogi igék listájának megtekintéséhez használja a Get-Verb cmdlet-et.
A jogi igék ismerete és az egyedülálló főnév-szabály emlékeztetése valóban segít a cmdlet-nevek kitalálásában. Tegyük fel például, hogy szeretné kap listát szolgáltatások és azok státusza - ez igaza, olyan egyszerű, mint a Get-Service. Szerinted mi lenne kap a futó lista folyamatok - ez igaz, a Get-Process megteszi a trükköt.
Get-Process
Ezáltal minden technológiával nagyon könnyű dolgozni. Ha például betöltötte az Exchange cmdleteket, könnyen megkaphatjuk a postafiókok listáját a kiszolgálón a következők használatával:
Get-Mailbox
Van azonban kivétel. Cserélje félre az összes többi technológiai parancsot előtaggal. Például, ha azt szeretnénk, hogy a távoli asztalon keresztül bejelentkezett felhasználókat a következőre írjuk:
Get-RDUserSession
Ami az alábbi képen látható.
Megjegyzés: Ez a képernyőkép a Server 2012 mezőben készült, mivel itt találja meg a legtöbb technológia-specifikus modult.
Néhány évvel ezelőtt elolvastam Don Jones, a PowerShell keresztapja cikkét, ahol elmagyarázta, hogy az Exchange előtti előtagot a cmdletekhez adták, így soha nem valósította meg őket.
Más nevek
A PowerShell egy másik funkciója az, hogy több módja is lehet ugyanazoknak a parancsoknak a futtatására - álnevek, ha akarja. A félelmetes dolog az, hogy sok parancsot tartalmazott, amelyeket esetleg a parancssorban használ, valamint néhány Linux álnevet. Például a PowerShell-ben a következő címtárlistát kaphatjuk:
Get-ChildItem
Használja a parancssor használatát? Ne aggódj, fedeztek.
Van egy Linux háttér? Ott is fedeztek.
Ha pár évig szkriptetett, hajlamos lesz lusta, és sokat kezd el használni az álneveket, de ez nem segít az újonnan érkezőknek, akik elolvassák a kódunkat. Ha látni szeretné, hogy egy alias parancsot a motorháztető alatt fut, használhatja a következőket:
Get-Alias -Neve ls
Másrészről, ha úgy érzi, itt az ideje, hogy lépést tegyen a játékban, akkor a definíciós paraméter segítségével kaphat egy cmdlet összes álnevet:
Get-ChildItem - Meghatározás Get-ChildItem
Ha más háttérről érkezik, akkor saját neveit is hozzáadhatja a következőképpen:
New-Alias -Name icanhazfilez -Valomány Get-ChildItem
Nyilvánvaló, hogy az „icanhazfilez” -et helyettesítenie kell az új álnév és a Get-ChildItem nevével a cmdlet segítségével, amelyet a motorháztető alatt szeretne futtatni.
Megjegyzendő, hogy minden olyan álnevet elveszít, amelyet a shell bezárásakor definiált. Ezt körülhatárolhatja a definíciójuk hozzáadásával a profilfájlhoz.
Csonkoló paraméterek
A Windows PowerShell lehetővé teszi a paraméternevek csonkítását egészen addig a pontig, amíg azok nem egyértelműek, vagyis addig, amíg a PowerShell már nem tudja kitalálni, hogy melyik paraméterről beszél. Például:
Get-Service -Neve "Apple Mobile Device" - Számítógépnév localhost
Ugyanaz mint:
Get-Service -Na "Apple Mobile Device" -Com helyi
Ha esetleg túlságosan félreértheted a paramétereket, akkor hibát kapsz.
Legacy parancsok
Végül, a megismert és szeretett parancsok még mindig működnek a PowerShell-ben.
ping www.google.com
Ne feledje, hogy olyan örökölt alkalmazások, mint a ping kimenet egy karakterláncot, és gyakran jobb módja annak, hogy ugyanazt a dolgot tegye a PowerShell cmdlet használatával.
Ahelyett, hogy hosszú szöveget írtam volna, most már egy tárgyat hagyunk, amit megnézünk a Geek Iskola holnapi kiadásában..