5 "Cmdlets", kad pradėtumėte "PowerShell"

Turinys:

5 "Cmdlets", kad pradėtumėte "PowerShell"
5 "Cmdlets", kad pradėtumėte "PowerShell"
Anonim
"PowerShell" greitai tampa pageidaujama scenarijaus kalba, "Power User" CLI, taip pat IT specialistais. Verta mokytis kelių komandų, kad galėtumėte pradėti, todėl turime 5 naudingų cmdlet, kad galėtumėte sužinoti šiandien.
"PowerShell" greitai tampa pageidaujama scenarijaus kalba, "Power User" CLI, taip pat IT specialistais. Verta mokytis kelių komandų, kad galėtumėte pradėti, todėl turime 5 naudingų cmdlet, kad galėtumėte sužinoti šiandien.

Get-Command

"Get-Command" yra viena iš labiausiai naudingų "PowerShell" cmdlet, nes ji padės jums susitvarkyti su "PowerShell", leisdama ieškoti tam tikrų cmdletų. Naudojant "Get-Command" pati savaime nėra labai naudinga, nes ji tiesiog ketina išskleisti kiekvieną "PowerShell" komandą.

Bet iš to mes matome, kad objektai, kuriuos "PowerShell" išėjimai turi tiek vardo, tiek "ModuleName" savybės. Naudodamiesi šia informacija mes galime pjaustyti mūsų paiešką, ieškodami cmdletų, kuriuose yra tam tikrų terminų. Pavyzdžiui, jei norėčiau rasti visas cmdlet, kuriose yra žodis "IP", galėčiau tai padaryti:
Bet iš to mes matome, kad objektai, kuriuos "PowerShell" išėjimai turi tiek vardo, tiek "ModuleName" savybės. Naudodamiesi šia informacija mes galime pjaustyti mūsų paiešką, ieškodami cmdletų, kuriuose yra tam tikrų terminų. Pavyzdžiui, jei norėčiau rasti visas cmdlet, kuriose yra žodis "IP", galėčiau tai padaryti:

Get-Command –Name *IP*

Kaip matote, mes vis dar gauname nemažai rezultatų, mūsų kita galimybė yra ieškoti pagal konkretų modulį. Mūsų atveju aš pasirinksiu NetTCPIP modulį.
Kaip matote, mes vis dar gauname nemažai rezultatų, mūsų kita galimybė yra ieškoti pagal konkretų modulį. Mūsų atveju aš pasirinksiu NetTCPIP modulį.

Get-Command –Module NetTCPIP –Name *IP*

Image
Image

Get-Help

Radau cmdlet, kurio ieškote naudodami komandą Get-Command, norėsite sužinoti sintaksę ir tai, kaip galite naudoti tą konkrečią cmdlet. Štai kur ateina "Get-Help", jei kada nors naudojate komandinę eilutę sistemoje "Windows", tikriausiai padarėte kažką panašaus į šį:

ipconfig /?

Na tai neveikia "PowerShell", nes "PowerShell" erdvėje naudojama atskirti komandą nuo jo parametrų. Taigi, vietoj to mes naudojame "Get-Help" ir kaip parametrą perduoti "cmdlets" pavadinimą kaip Get-Help.

Get-Help Get-Process

Image
Image

Get-member

Get-member leidžia mums gauti informaciją apie objektus, kuriuos cmdlet grąžina. Susipažinimas su "get-member" yra tai, kad jis remiasi "PowerShell" vamzdynų funkcija, tai parodysime, galėsime naudoti "Get-Process" cmdlet.

Kaip matote, "PowerShell" išvestis parodo mums keletą savybių, kurias galite pamatyti kiekvieno stulpelio viršuje. Pirmoji problema yra tai, kad nors tai yra savybės, kurias galbūt ieškote daugeliu atvejų, jų vis dar yra daug. Antroji problema yra ta, kad ji nerodo jokių metodų, kuriais mes galime paskambinti objektui. Norėdami pamatyti metodus ir savybes, mes galime perduoti mūsų produkciją "Get-member", pavyzdžiui:
Kaip matote, "PowerShell" išvestis parodo mums keletą savybių, kurias galite pamatyti kiekvieno stulpelio viršuje. Pirmoji problema yra tai, kad nors tai yra savybės, kurias galbūt ieškote daugeliu atvejų, jų vis dar yra daug. Antroji problema yra ta, kad ji nerodo jokių metodų, kuriais mes galime paskambinti objektui. Norėdami pamatyti metodus ir savybes, mes galime perduoti mūsų produkciją "Get-member", pavyzdžiui:

Get-Process | Get-Member

Nepaisant to, kad dabar jums gali tekti nieko, anksčiau ar vėliau turėsite naudoti "Get-member", ir kuo anksčiau jūs mokysite jį naudoti, tuo geriau. Pavyzdžiui, naudojant informaciją iš išvesties galime padaryti kažką panašaus:
Nepaisant to, kad dabar jums gali tekti nieko, anksčiau ar vėliau turėsite naudoti "Get-member", ir kuo anksčiau jūs mokysite jį naudoti, tuo geriau. Pavyzdžiui, naudojant informaciją iš išvesties galime padaryti kažką panašaus:

Start-Process notepad.exe $NotepadProc = Get-Process -Name notepad $NotepadProc.WaitForExit() Start-Process calc.exe

Šis scenarijus paleidžia notepad, paskui priskiria "Get-Process -Name notepad" išvestį į "$ NotepadProc" kintamąjį, tada mes vadiname WaitForExit metodą "$ NotepadProc", dėl kurio scenarijus pristabdomas, kol uždarote "notepad", kai uždarote užrašų knygutę tada skaičiuotuvas bus paleistas.

$ _ (Dabartinis vamzdyno objektas)

Nors ne visai yra cmdlet, tai yra vienas iš labiausiai naudojamų specialių kintamųjų "PowerShell". Oficialus pavadinimas $ _ yra "dabartinis vamzdyno objektas". Jis naudojamas scenarijų blokuose, filtruose, funkcijų proceso išlyga, kur-objektui, foreach-objektui ir jungikliams. Tačiau tai lengviau paaiškinti pavyzdžiu, kuris atvedė mus į kitą ir paskutinę cmdlet "Where-Object".

Kur-objektas

Kai objektas daro tai, ką jis skamba, jis pasirenka objektą pagal tai, ar jis atitinka tam tikrus kriterijus. Tai sujungs $ _ ir savybes, kurias galime matyti naudojant "Get-member". Norėdami tai įrodyti, mes išmesime "Get-Process" produkciją į "Where-Object" cmdlet.

Get-Process | Where-Object {$_.Name –eq “iexplore”}

Rekomenduojamas: