Geeko mokykla: sužinokite, kaip išplėsti "PowerShell"

Turinys:

Geeko mokykla: sužinokite, kaip išplėsti "PowerShell"
Geeko mokykla: sužinokite, kaip išplėsti "PowerShell"

Video: Geeko mokykla: sužinokite, kaip išplėsti "PowerShell"

Video: Geeko mokykla: sužinokite, kaip išplėsti
Video: Windows 8 parental controls step-by-step guide | Internet Matters 2024, Balandis
Anonim
PowerShell siūlo du būdus, kaip išplėsti apvalkalą. Galite naudoti snapinus, kurie yra tik dvejetainiai, ir sukurti išsamią programavimo kalbą, pvz., C #, arba galite naudoti modulius, kurie gali būti dvejetainiai ir scenarijai.
PowerShell siūlo du būdus, kaip išplėsti apvalkalą. Galite naudoti snapinus, kurie yra tik dvejetainiai, ir sukurti išsamią programavimo kalbą, pvz., C #, arba galite naudoti modulius, kurie gali būti dvejetainiai ir scenarijai.

Būtinai perskaitykite ankstesnius serijos straipsnius:

  • Sužinokite, kaip automatizuoti "Windows" su "PowerShell"
  • Mokytis naudotis "PowerShell" kompiliacijomis
  • Mokymasis naudoti objektus PowerShell
  • Mokymosi formatavimas, filtravimas ir palyginimas PowerShell
  • Sužinokite, kaip naudoti "Remoting" "PowerShell"
  • "PowerShell" naudojimas kompiuterio informacijai gauti
  • Darbas su "PowerShell" kolekcijomis

Ir visada sekite visą seriją likusiai savaitę.

Snapins

Snapins yra tokios pačios kaip praėjusiais metais. Visi anekdotai, snapins niekada nebuvo sugautos tarp "PowerShell" bendruomenės, nes daugelis scenarijų nėra kūrėjai, o jūs galite rašyti snapinus tik C # kalba. Nepaisant to, vis dar yra produktų, kuriuose naudojami snapinėliai, pvz., "Web Deploy". Norėdami sužinoti, kokie snapinėliai jums gali būti naudojami, naudokite šią komandą:

Get-PSSnapin –Registered

Norėdami naudoti komandas, kurias pridėjo snapinas, pirmiausia turite jį importuoti į savo sesiją ir tai padaryti galite taip:
Norėdami naudoti komandas, kurias pridėjo snapinas, pirmiausia turite jį importuoti į savo sesiją ir tai padaryti galite taip:

Add-PSSnapin -Name WDeploySnapin3.0

Tuo metu gausite klaidą, jei neturėsite įdiegtos "Web Deploy" spragtelėjimo. Jei jis įdiegtas, kaip ir aš, jis bus importuotas į jūsų sesiją. Norėdami gauti komandų sąrašą, kurį galima rasti snapin, galite tiesiog naudoti komandą Get-Command cmdlet:

Get-Command –Module WDeploy*

Pastaba: techniškai tai nėra modulis, tačiau dėl kokios nors priežasties vis tiek turite naudoti modulio parametrą.

Image
Image

Moduliai

Moduliai yra naujesni ir yra tolesni veiksmai. Jie gali būti scenarijus naudojant "PowerShell", taip pat koduojami tokia kalba kaip "C #". Dauguma integruotų komandų yra suskirstytos į modulius. Norėdami pamatyti modulių sąrašą savo sistemoje, galite naudoti šią komandą:

Get-Module –ListAvailable

Kai produktai atnaujinami, jų "PowerShell" partneriai perkeliami į modulius. Pavyzdžiui, "SQL" naudojamas kaip snapinas, bet dabar jis susideda iš modulių.
Kai produktai atnaujinami, jų "PowerShell" partneriai perkeliami į modulius. Pavyzdžiui, "SQL" naudojamas kaip snapinas, bet dabar jis susideda iš modulių.
Kad galėtumėte naudoti modulį, pirmiausia turite jį importuoti.
Kad galėtumėte naudoti modulį, pirmiausia turite jį importuoti.

Import-Module -Name SQLASCMDLETS

Galite naudoti tą patį triuką, kurį naudodavome snapinomis, norėdami peržiūrėti visas komandas, kurias modulis pridėjo prie apvalkalo.

Taigi lieka klausimas: kaip "PowerShell" žino, kokios snapinėlės ir moduliai turi jūsų sistemoje? Na, snapinėliai yra šiek tiek skausmo ir turi būti įdiegti. Dalis diegimo proceso apima keletą registro įrašų, kuriuos "PowerShell" žiūri, kad būtų galima surasti snapiną informaciją. Kita vertus, moduliai gali būti užregistruoti naudojant apvalkalą, tiesiog juos įrašant į vieną iš vietovių aplinkos modulio PSModulePath. Arba galite pridėti modulio kelią prie aplinkos kintamojo.
Taigi lieka klausimas: kaip "PowerShell" žino, kokios snapinėlės ir moduliai turi jūsų sistemoje? Na, snapinėliai yra šiek tiek skausmo ir turi būti įdiegti. Dalis diegimo proceso apima keletą registro įrašų, kuriuos "PowerShell" žiūri, kad būtų galima surasti snapiną informaciją. Kita vertus, moduliai gali būti užregistruoti naudojant apvalkalą, tiesiog juos įrašant į vieną iš vietovių aplinkos modulio PSModulePath. Arba galite pridėti modulio kelią prie aplinkos kintamojo.

($env:PSModulePath).Split(“;”)

Tai pakeis kintamojo turinį. Atkreipkite dėmesį, kad jei turite įdiegtą modulį kaip SQL, kaip jis pakeitė kintamąjį, įtraukiant SQL modulio vietą.

Image
Image

Modulio automatinis įkėlimas

"PowerShell 3" pristatė nuostabią naują funkciją, kurią sudaro keli vardai. Nė vienas iš jų nėra oficialus, bet "Module Auto Loading" yra geriausias jo aprašymas. Iš esmės tai leidžia naudoti išoriniam moduliui priklausančius cmdletus, aiškiai neįvedant modulio naudojant "Import-Module" cmdlet. Norėdami tai pamatyti, pirmiausia pašalinkite visus modulius iš savo korpuso naudodami šią komandą:

Get-Module | Remove-Module

Tada galite patikrinti, ar neturite modulių, kuriuos įkėlėte naudodami šią funkciją:

Get-Module

Dabar naudokite cmdlet, kuris nėra pagrindinėje bibliotekoje. Bandomasis ryšys yra geras:
Dabar naudokite cmdlet, kuris nėra pagrindinėje bibliotekoje. Bandomasis ryšys yra geras:

Test-Connection localhost

Rekomenduojamas: