PowerShell ātri kļūst par vēlamo skriptu valodu un Power User (CLI), kā arī IT speciālistiem. Ir labi vērts mācīt dažas komandas, lai sāktu darbu, tādēļ mums ir pieejamas noderīgas cmdlets, lai jūs varētu šodien mācīties.
Get-Command ir viens no visnoderīgākajiem cmdlets visā PowerShell, jo tas palīdzēs jums sazināties ar PowerShell, ļaujot jums meklēt noteiktus cmdletus. Izmantojot komandu Get-Command pati par sevi, tas nav ļoti noderīgi, jo tā vienkārši izstumst katru PowerShell komandu.
Bet no tā mēs varam redzēt, ka objekti, kas PowerShell izejas, ir gan nosaukums, gan modulisName īpašums. Izmantojot šo informāciju, mēs varam smalki apstrādāt mūsu meklēšanu, meklējot cmdletus, kas satur noteiktus terminus. Piemēram, ja es gribētu atrast visas cmdoles, kurās ir vārds "IP", es to varētu izdarīt:
Get-Command -Name * IP *
Kā redzat, mēs joprojām saņemam diezgan daudz rezultātu, mūsu nākamā iespēja ir meklēt konkrētā modulī. Mūsu gadījumā es izvēlēšos NetTCPIP moduli.
Get-Command -Module NetTCPIP -Name * IP *
Kad esat atradis cmdlet, kuru meklējat, izmantojot Get-Command, jūs gribat zināt sintaksi un to, kā jūs varat izmantot šo konkrēto cmdlet. Šajā vietā tiek parādīts Get-Help, ja jūs kādreiz esat lietojis komandrindu sistēmā Windows, iespējams, ir kaut kas līdzīgs šim:
ipconfig /?
Nu, kas PowerShell nedarbojas, tas ir tāpēc, ka PowerShell vietā tiek izmantota vieta, lai komandu atdalītu no tā parametriem. Tā vietā mēs izmantojam Get-Help un nododam cmdlets nosaukumu kā Get-Help kā parametru.
Get-Help Get-Process
Get-member ļauj mums iegūt informāciju par objektiem, ko atdod cmdlets. Pieķeršanās dalībniekam ir tas, ka, lai pierādītu, ka tā balstās uz PowerShell cauruļvada funkciju, mēs varēsim izmantot cmdlet Get-Process.
Kā redzat, PowerShell izlaide parāda dažas īpašības, kuras jūs varat redzēt katras kolonnas augšdaļā. Pirmā problēma ir tā, ka, lai gan tās ir rekvizīti, kuras jūs varētu būt meklējat lielāko daļu laika, joprojām ir vairāk no tām. Otrā problēma ir tā, ka tajā nav nevienas metodes, ar kurām mēs varam izsaukt objektu. Lai apskatītu metodes un īpašības, mēs varam izmēģināt mūsu izvadi Get-dalībniekam tāpat:
Get-Process | Get-dalībnieks
Lai gan tas var nozīmēt neko jums tieši tagad, jums agrāk vai vēlāk būs jāizmanto Get-dalībnieks, un jo ātrāk jūs mācīties to izmantot, jo labāk. Piemēram, izmantojot informāciju no produkcijas, mēs varētu darīt kaut ko līdzīgu:
Sākuma process notepad.exe
$ NotepadProc = Get-Process -Name notepad
$ NotepadProc.WaitForExit ()
Sākuma process calc.exe
Šis skripts palaiž notepad, pēc tam tas piešķir $ NotepadProc mainīgā "Get-Process -Name notepad" produkciju, pēc tam mēs izsaukam WaitForExit metodi pie $ NotepadProc, kas liek skriptam apturēt, līdz aizverat notepad, kad esat aizvēris notepad tad kalkulators sāksies.
Kamēr ne tieši cmdlet, tas ir viens no visbiežāk izmantotajiem īpašajiem mainīgajiem PowerShell. Oficiālais nosaukums $ _ ir "pašreizējais cauruļvada objekts". To izmanto skriptu blokos, filtros, funkciju procesa klauzulā, kur-objektu, foreach-objektu un slēdžu. Tomēr to ir vieglāk izskaidrot ar piemēru, kas mūs noved pie mūsu nākamā un pēdējā cmdlet, kur atrodas objekts.
Kur objekts dara tieši to, ko tas izklausās, tas atlasa objektu, pamatojoties uz to, vai tas atbilst noteiktiem kritērijiem. Tas apvienos $ _ un īpašumus, kurus varam redzēt, izmantojot Get-dalībnieku. Lai to pierādītu, mēs caurlaide Get-Process izvadi uz Kurš objekta cmdlet.
Get-Process | Kur objekts $ _. Nosaukums-eq "iexplore"
Tātad, kas notiek šeit, jūs lūdzat? Nu, pirmā lieta, ko mēs darām, ir iegūt mūsu datorā esošo procesu sarakstu un izvadīt produkciju (izmantojot rakstzīmi) uz mūsu vietnes-objekta cmdlet, kas kā parametru aizņem skripta bloku. Skripta bloks (kas definēts ar cirtainām lentēm) uzdod kur-object cmdlet tikai atlasīt objektus, kuru vārdu parametrs ir vienāds ar iexplore, un tāpēc mēs saņemam tikai to IE gadījuma sarakstu, kas darbojas. Tas viss ir uz to, ir jautri!