Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko

Ngokomlando, izinsiza zomugqa womyalo ezinhlelweni ze-Unix zithuthukiswe kangcono kuneWindows, kodwa ngokufika kwesixazululo esisha, isimo sishintshile.

I-Windows PowerShell ivumela abaphathi besistimu ukuthi bazenzele imisebenzi eminingi evamile. Ngayo, ungashintsha izilungiselelo, umise futhi uqale izinsiza, futhi wenze ukulungisa ezinhlelweni eziningi ezifakiwe. Kungaba okungalungile ukubona iwindi eliluhlaza njengenye umhumushi womyalo. Le ndlela ayibonisi ingqikithi yezinto ezintsha eziphakanyiswe yi-Microsoft. Eqinisweni, amathuba eWindows PowerShell abanzi kakhulu: ochungechungeni olufushane lwezihloko, sizozama ukuthola ukuthi isixazululo seMicrosoft sihluke kanjani kumathuluzi esiwajwayele kakhulu.

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko

Izici Eziyinhloko 

Yebo, i-Windows PowerShell ngokuyinhloko iyigobolondo lokubhala, elakhelwe ekuqaleni ku-.NET Framework futhi kamuva ku-.NET Core. Ngokungafani namagobolondo amukela futhi abuyisele idatha yombhalo, iWindows PowerShell isebenza ne-.NET amakilasi anezakhiwo nezindlela. I-PowerShell ikuvumela ukuthi usebenzise imiyalo evamile futhi ikunikeza nokufinyelela kuzinto ze-COM, WMI, kanye ne-ADSI. Isebenzisa ukugcinwa okuhlukahlukene, njengesistimu yefayela noma i-Windows registry, ukuze ifinyelele kulokho okubizwa. abahlinzeki. Kuyaphawuleka ukuthi kungenzeka ukushumeka izingxenye ezisebenzisekayo ze-PowerShell kwezinye izinhlelo zokusebenza ukuze kusetshenziswe imisebenzi ehlukahlukene, kuhlanganisa. ngokusebenzisa i-graphical interface. Okuhlehlayo nakho kuyiqiniso: izinhlelo zokusebenza eziningi ze-Windows zinikeza ukufinyelela ku-interface yazo yokuphatha nge-PowerShell. 

IWindows PowerShell ikuvumela ukuthi:

  • Shintsha izilungiselelo zesistimu yokusebenza;
  • Phatha izinsiza nezinqubo;
  • Lungiselela izindima nezingxenye zeseva;
  • Faka isofthiwe;
  • Phatha isofthiwe efakiwe ngokusebenzisa izixhumanisi ezikhethekile;
  • Shumeka izingxenye ezisebenzisekayo ezinhlelweni zezinkampani zangaphandle;
  • Dala imibhalo ukuze wenze ngokuzenzakalelayo imisebenzi yokuphatha;
  • Sebenza ngesistimu yefayela, ukubhaliswa kweWindows, isitolo sesitifiketi, njll.

Igobolondo nendawo yentuthuko

Kukhona iWindows PowerShell ngezindlela ezimbili: ngaphezu kwe-emulator yekhonsoli enegobolondo lomyalo, kukhona I-Integrated Scripting Environment (ISE). Ukuze ufinyelele isixhumi esibonakalayo somugqa womyalo, vele ukhethe isinqamuleli esifanele kwimenyu yeWindows noma sebenzisa i-powershell.exe kumenyu ethi Run. Iwindi eliluhlaza lizovela esikrinini, elihluke ngokuphawulekayo ngamakhono avela ku-cmd.exe yangaphambi kolwandle. Kukhona ukuqedela ngokuzenzakalela nezinye izici ezijwayelekile kubasebenzisi bamagobolondo womyalo wezinhlelo ze-Unix.

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko

Ukuze usebenze ngegobolondo, udinga ukukhumbula izinqamuleli zekhibhodi:

  • Imicibisholo yaphezulu naphansi iskrola emlandweni ukuze iphinde imiyalo ethayiphiwe ngaphambilini;
  • Umcibisholo ongakwesokudla ekupheleni komugqa uthayipha kabusha uhlamvu lomyalo wangaphambilini ngohlamvu;
  • I-Ctrl+Home isusa umbhalo othayiphiwe ukusuka endaweni yekhesa ukuya ekuqaleni komugqa;
  • U-Ctrl+End ususa umbhalo ukusuka kukhesa ukuya ekugcineni komugqa.

I-F7 ikhombisa iwindi elinemiyalo ethayiphiwe futhi ikuvumela ukuthi ukhethe owodwa wayo. Ikhonsoli iphinde isebenze nokukhetha umbhalo ngegundane, kopisha-namathisela, ukuma kwekhesa, ukususwa, i-backspace - yonke into esiyithandayo.

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko
I-Windows PowerShell ISE iyindawo ephelele yokuthuthuka enomhleli wekhodi onamathebhu kanye ne-syntax egqanyisiwe, umakhi womyalo, i-debugger eyakhelwe ngaphakathi, nezinye izinjabulo zezinhlelo. Uma ubhala i-hyphen ngemva kwegama lomyalo kusihleli sendawo yokuthuthukisa, uzothola zonke izinketho ezitholakalayo ohlwini lokudonsela phansi olunenkomba yohlobo. Ungakwazi ukuqalisa i-PowerShell ISE ngokusebenzisa isinqamuleli esivela kumenyu yohlelo, noma usebenzisa ifayela elisebenzisekayo elithi powershell_ise.exe.

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko

Cmdlets 

Ku-Windows PowerShell, okuthiwa. cmdlets. Lawa amakilasi akhethekile e-NET ahlinzeka ngemisebenzi ehlukahlukene. Ziqanjwe ngokuthi i-Action-Object (noma i-Verb-Noun, uma uthanda), futhi isixhumanisi esihlukaniswe ngamakhonco sifana nesilandiso nenhloko emishweni yolimi lwemvelo. Isibonelo, i-Get-Help ngokwezwi nezwi isho ukuthi "Thola-Usizo", noma kumongo we-PowerShell: "Show-Help". Eqinisweni, lokhu kufana ne-analogue yomyalo wendoda ezinhlelweni ze-Unix, futhi amamanuwali ku-PowerShell kufanele acelwe ngale ndlela, hhayi ngokushayela ama-cmdlets ngokhiye --help noma /? Ungakhohlwa mayelana nemibhalo ye-PowerShell eku-inthanethi: IMicrosoft inemininingwane eminingi.

Ukwengeza kokuthi Thola, ama-cmdlets asebenzisa ezinye izenzo ukukhombisa izenzo (hhayi izenzo kuphela, ukukhuluma ngokuqinile). Ohlwini olungezansi sinikeza izibonelo ezithile:

Add - engeza;
Clear - ecacile;
Enable - Vula;
Disable - vala;
New - dala;
Remove - susa;
Set - buza;
Start - run;
Stop - Ima;
Export - ukuthekelisa;
Import - ukungenisa.

Kukhona isistimu, umsebenzisi kanye nama-cmdlets ozikhethela: njengomphumela wokwenza, bonke babuyisela into noma uxhaxha lwezinto. Abanamacala abucayi, i.e. ngokombono wotolika womyalo, awukho umehluko phakathi kokuthi Thola Usizo kanye nokuthola usizo. Uhlamvu ';' lusetshenziselwa ukuhlukanisa, kodwa kuphoqelekile ukukubeka kuphela uma ama-cmdlets amaningana enziwa emugqeni ofanayo. 

Ama-cmdlets e-Windows PowerShell ahlanganiswe abe amamojula (NetTCPIP, Hyper-V, njll.), futhi kukhona i-Get-Command cmdlet yokusesha ngento nangesenzo. Ungabonisa usizo lwayo kanje:

Get-Help Get-Command

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko

Ngokuzenzakalelayo, umyalo ubonisa usizo olufushane, kodwa imingcele (izimpikiswano) idluliselwa kuma-cmdlets njengoba kudingeka. Ngosizo lwabo, ungakwazi, isibonelo, ukuthola usizo oluningiliziwe (ipharamitha -Imininingwane) noma igcwele (ipharamitha -Egcwele) usizo, kanye nezibonelo zokubonisa (ipharamitha -Izibonelo):

Get-Help Get-Command -Examples

Usizo ku-Windows PowerShell luvuselelwa yi-Update-Help cmdlet. Uma umugqa womyalo ubonakala uba mude kakhulu, izimpikiswano ze-cmdlet zingathuthelwa kwelandelayo ngokubhala uhlamvu lwesevisi oluthi ''`' bese ucindezela u-Enter - ukuqeda nje ukubhala umyalo kulayini owodwa nokuqhubeka komunye ngeke kusebenze.

Nazi ezinye izibonelo zama-cmdlets ajwayelekile: 

Get-Process - bonisa izinqubo ezisebenzayo ohlelweni;
Get-Service - khombisa izinsiza kanye nesimo sazo;
Get-Content - bonisa okuqukethwe kwefayela.

Kuma-cmdlets asetshenziswa njalo kanye nezinsiza zangaphandle, iWindows PowerShell inamagama afanayo amafushane - iziteketiso (kusuka kwesiNgisi. Iziteketiso). Isibonelo, i-dir isibizo se-Get-ChildItem. Uhlu lwama-synonyms luhlanganisa ama-analogue emiyalo evela kumasistimu e-Unix (ls, ps, njll.), futhi i-cmdlet ethi Thola Usizo ibizwa ngomyalo wosizo. Uhlu oluphelele lomqondofana lungabonwa kusetshenziswa i-Get-Alias ​​​​cmdlet:

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko

Izikripthi, Imisebenzi, Amamojula, kanye Nolimi lwe-PowerShell

Imibhalo ye-Windows PowerShell igcinwa njengamafayela ombhalo angenalutho anesandiso se-.ps1. Awukwazi ukuyethula ngokuchofoza kabili: udinga ukuchofoza kwesokudla ukuze ubize imenyu yokuqukethwe bese ukhetha into ethi "Run in PowerShell". Kusuka kukhonsoli, kuzodingeka ukuthi ucacise indlela egcwele eya kuskripthi, noma uye kuhla lwemibhalo olufanele bese ubhala igama lefayela. Imibhalo esebenzayo iphinde ikhawulelwe inqubomgomo yesistimu, futhi ukuze uhlole izilungiselelo zamanje, ungasebenzisa i-Get-ExecutionPolicy cmdlet, ezobuyisela elinye lamanani alandelayo:

Restricted - ukwethulwa kwemibhalo kukhutshaziwe (ngokuzenzakalelayo);
AllSigned - ukwethulwa kuphela kwemibhalo esayinwe unjiniyela owethembekile okuvunyelwe;
RemoteSigned - kuvunyelwe ukusebenzisa imibhalo esayiniwe neyakho;
Unrestricted - kuvunyelwe ukusebenzisa noma yiziphi izikripthi.

Umlawuli unezinketho ezimbili. Okuvikeleke kakhulu kuhlanganisa ukusayina imibhalo, kodwa lokhu kuwukuthakatha okungathi sína - sizobhekana nakho ezihlokweni ezizayo. Manje ake sithathe indlela yokumelana okuncane futhi siguqule inqubomgomo:

Set-ExecutionPolicy RemoteSigned

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko
I-PowerShell izodinga ukusetshenziswa njengomlawuli ukwenza lokhu, nakuba ungakwazi ukushintsha inqubomgomo yomsebenzisi wamanje ngesilungiselelo esikhethekile.

Imibhalo ibhalwe ngolimi lokuhlela olugxile entweni, imiyalo yayo eqanjwe ngokomgomo ofanayo nama-cmdlets okuxoxwe ngawo ngaphambilini: “Into Yesenzo” (“Verb-Noun”). Inhloso yayo eyinhloko ukwenza imisebenzi yokuqondisa ngokuzenzakalelayo, kodwa iwulimi olutolikiwe oluphelele olunazo zonke izakhiwo ezidingekayo: ukugxuma okunemibandela, amalophu, okuguquguqukayo, ama-array, izinto, ukuphatha amaphutha, njll. Noma yimuphi umhleli wombhalo ulungele ukubhalwa, kodwa kungcono kakhulu ukusebenzisa i-Windows PowerShell ISE.

Ungadlulisela amapharamitha kusikripthi, uwenze adingeke, bese usetha amanani azenzakalelayo. Ngaphezu kwalokho, iWindows PowerShell ikuvumela ukuthi udale futhi ushayele imisebenzi ngendlela efanayo ne-cmdlets, ngokusebenzisa i-Function construct kanye nezinsimbi ezisontekile. Umbhalo onamafunctions ubizwa ngokuthi imojuli futhi unesandiso esithi .psm1. Amamojula kufanele agcinwe ohlwini lwemibhalo oluchazwe ku-PowerShell eziguquguqukayo zemvelo. Ungawabuka ngomyalo olandelayo:

Get-ChildItem Env:PSModulePath | Format-Table -AutoSize

Izingcweti

Esibonelweni sokugcina, sisebenzise isakhiwo esijwayele abasebenzisi begobolondo le-Unix. Ku-Windows PowerShell, ibha eqondile futhi ikuvumela ukuthi udlulise ukuphuma komyalo owodwa kokokufaka komunye, kodwa kunomehluko omkhulu ekusetshenzisweni kwepayipi: asisakhulumi ngeqoqo lezinhlamvu noma uhlobo oluthile umbhalo. Ama-cmdlets akhelwe ngaphakathi noma imisebenzi echazwe umsebenzisi ibuyisela izinto noma izinhlu zezinto, futhi ingazithola njengokufakwayo. Njengegobolondo le-Bourne kanye nabalandela abaningi, i-PowerShell yenza imisebenzi eyinkimbinkimbi ibe lula ngepayipi.

Isibonelo esilula kakhulu sepayipi sibukeka kanjena:

Get-Service | Sort-Object -property Status

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko
Okokuqala, i-cmdlet ye-Get-Service iyenziwa, bese zonke izinkonzo ezitholwe yiyo zidluliselwa ku-Sort-Object cmdlet ukuze ihlungwe ngesakhiwo Sesimo. Iyiphi i-agumenti umphumela wesigaba sangaphambilini sepayipi esidluliselwe kuncike ohlotsheni lwawo - ngokuvamile kuba yi-InputObject. Lolu daba kuzoxoxwa ngalo kabanzi esihlokweni esinikezelwe olimini lokuhlela lwe-PowerShell. 

Uma ufisa, ungaqhubeka neketango futhi udlulisele umphumela wokusebenza kwe-Sort-Object kwenye i-cmdlet (zizokwenziwa ukusuka kwesobunxele kuye kwesokudla). Ngendlela, abasebenzisi be-Windows nabo banokufinyelela ekwakhiweni kwe-pagination ejwayelekile kuwo wonke ama-Unixoids: 

Get-Service | Sort-Object -property Status | more

Ukwenza imisebenzi ngemuva 

Imvamisa, kuyadingeka ukwenza umyalo othile ngemuva, ukuze ungalindi umphumela wokwenziwa kwawo kuseshini yegobolondo. IWindows PowerShell inama-cmdlets amaningana aleli cala:

Start-Job - ukwethula umsebenzi ongemuva;
Stop-Job - misa umsebenzi wasemuva;
Get-Job — buka uhlu lwemisebenzi yangemuva;
Receive-Job - ukubuka umphumela wokwenziwa komsebenzi wangemuva;
Remove-Job - ukususa umsebenzi ongemuva;
Wait-Job - ukudlulisela umsebenzi ongemuva emuva kukhonsoli.

Ukuqala umsebenzi wangemuva, sisebenzisa i-Start-Job cmdlet bese sicacisa umyalo noma isethi yemiyalo kumabrace asontekile:

Start-Job {Get-Service}

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko
Imisebenzi yangemuva ku-Windows PowerShell ingashintshwa ngokwazi amagama ayo. Okokuqala, ake sifunde ukuthi singawabonisa kanjani:

Get-Job

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko
Manje ake sibonise umphumela womsebenzi Job1:

Receive-Job Job1 | more

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko
Konke kulula kakhulu.

Ukwenziwa komyalo wesilawuli kude

IWindows PowerShell ikuvumela ukuthi wenze imiyalo nemibhalo hhayi kuphela kukhompuyutha yangakini, kodwa nakukhompyutha ekude, ngisho naseqenjini lonke lemishini. Kunezindlela eziningana zokwenza lokhu:

  • Ama-cmdlets amaningi anepharamitha -ComputerName, kodwa ngale ndlela ngeke isebenze, isibonelo, ukudala umthumeli;
  • Cmdlet Enter-PSSession ikuvumela ukuthi udale iseshini esebenzisanayo emshinini oqhelile; 
  • Ukusebenzisa i-cmdlet Invoke-Command ungasebenzisa imiyalo noma imibhalo kukhompuyutha eyodwa noma amaningi akude.

Izinguqulo ze-PowerShell

I-PowerShell isishintshe kakhulu kusukela yakhululwa okokuqala ngo-2006. Ithuluzi liyatholakala kumasistimu amaningi asebenza kumapulatifomu e-hardware ahlukene (x86, x86-64, Itanium, ARM): Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008/2008 R2, Windows 7, Windows 8, Windows 8.1, I-Windows RT, Windows RT 8.1, Windows Server 2012/2012 R2, Windows 10, Windows Server 2016, GNU/Linux ne-OS X. Ukukhishwa kwakamuva okungu-6.2 kukhishwe ngoJanuwari 10, 2018. Imibhalo ebhalelwe izinguqulo zangaphambili kungenzeka isebenze ezinguqulweni zakamuva, kodwa ukubuyisela emuva kungaba inkinga ngoba i-PowerShell yethule inani elikhulu lama-cmdlets amasha phakathi neminyaka yokuthuthuka. Ungathola inguqulo yegobolondo lomyalo elifakwe kukhompuyutha usebenzisa impahla ye-PSVersion ye-$PSVersionTable eguquguqukayo eyakhelwe ngaphakathi:

$PSVersionTable.PSVersion

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko
Ungasebenzisa futhi i-cmdlet:

Get-Variable -Name PSVersionTable –ValueOnly

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko
Okufanayo kwenziwa nge-Get-Host cmdlet. Eqinisweni, ziningi izinketho, kodwa ukuze uzisebenzise udinga ukufunda ulimi lokuhlela lwe-PowerShell, esizokwenza kulo. isihloko esilandelayo

Imiphumela 

I-Microsoft ikwazile ukwakha igobolondo elinamandla ngempela elinendawo edidiyelwe elula yokuthuthukisa imibhalo. Ihlukile kumathuluzi esiwajwayele emhlabeni we-Unix ngokuhlanganiswa okujulile namasistimu okusebenza omndeni wakwa-Windows, kanye nesofthiwe yawo kanye neplathifomu ye-.NET Core. I-PowerShell ingabizwa ngokuthi igobolondo eliqondiswe entweni ngenxa yokuthi ama-cmdlets nemisebenzi echazwe ngumsebenzisi ibuyisela izinto noma izinhlu zezinto futhi ingazithatha njengokufaka. Sicabanga ukuthi bonke abalawuli beseva ku-Windows kufanele babe ngabanikazi baleli thuluzi: isikhathi sesidlulile lapho bengenza khona ngaphandle komugqa womyalo. Igobolondo lekhonsoli ethuthukisiwe lidingeka kakhulu i-VPS yethu ebiza kancane esebenzisa iWindows Server Core, kodwa leyo indaba ehluke ngokuphelele.

Iyini iWindows PowerShell futhi idliwa ngani? Ingxenye 1: Izici Eziyinhloko

Abasebenzisi ababhalisiwe kuphela abangabamba iqhaza kuhlolovo. Ngena ngemvume, wamukelekile.

Yiziphi izihloko okufanele kucatshangelwe ngazo ezihlokweni ezilandelayo zalolu chungechunge?

  • 53,2%Ukuhlela ku-PowerShell123

  • 42,4%Imisebenzi ye-PowerShell98 namamojula

  • 22,1%Uzisayina kanjani eyakho imibhalo?51

  • 12,1%Ukusebenza nezindawo zokugcina ngokusebenzisa abahlinzeki (abahlinzeki)28

  • 57,6%I-Automating Computer Administration nge-PowerShell133

  • 30,7%Ukuphathwa kwesoftware nokushumeka okusebenzisekayo kwe-PowerShell emikhiqizweni yezinkampani zangaphandle71

Bangu-231 abasebenzisi abavotile. Abasebenzisi abangama-37 bagobile.

Source: www.habr.com

Engeza amazwana