Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli

A tarihi, abubuwan amfani da layin umarni akan tsarin Unix sun fi haɓakawa fiye da na Windows, amma tare da zuwan sabon mafita, lamarin ya canza.

Windows PowerShell yana bawa masu gudanar da tsarin damar sarrafa yawancin ayyuka na yau da kullun. Tare da taimakonsa, zaku iya canza saituna, tsayawa da fara sabis, sannan kuma aiwatar da kulawar yawancin aikace-aikacen da aka shigar. Ba daidai ba ne a fahimci taga shuɗi a matsayin wani mai fassarar umarni. Wannan hanyar ba ta nuna ainihin sabbin abubuwan da Microsoft ke samarwa ba. A gaskiya ma, iyawar Windows PowerShell sun fi fadi: a cikin ɗan gajeren jerin kasidu za mu yi ƙoƙarin gano yadda maganin Microsoft ya bambanta da kayan aikin da muka fi sani da su.

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli

Abubuwan fasali 

Tabbas, Windows PowerShell da farko harsashi ne na rubutun, wanda aka gina a asali akan .NET Framework kuma daga baya akan NET Core. Ba kamar harsashi masu karɓa da dawo da bayanan rubutu ba, Windows PowerShell yana aiki tare da azuzuwan NET waɗanda ke da kaddarori da hanyoyin. PowerShell yana ba ku damar gudanar da umarni gama gari kuma yana ba ku dama ga abubuwan COM, WMI, da ADSI. Yana amfani da ma'ajiya daban-daban, kamar tsarin fayil ko rajistar Windows, don samun damar abin da ake kira. masu bayarwa. Yana da kyau a lura da yuwuwar shigar da abubuwan aiwatarwa na PowerShell a cikin wasu aikace-aikacen don aiwatar da ayyuka daban-daban, gami da. ta hanyar dubawar hoto. Juyayin kuma gaskiya ne: yawancin aikace-aikacen Windows suna ba da damar yin amfani da mu'amalar sarrafa su ta hanyar PowerShell. 

Windows PowerShell yana ba ku damar:

  • Canja saitunan tsarin aiki;
  • Sarrafa ayyuka da matakai;
  • Sanya matsayin uwar garken da abubuwan da aka gyara;
  • Shigar da software;
  • Sarrafa shigar software ta musaya na musamman;
  • Saka abubuwan da za a iya aiwatarwa a cikin shirye-shiryen ɓangare na uku;
  • Ƙirƙirar rubutun don sarrafa ayyukan gudanarwa ta atomatik;
  • Yi aiki tare da tsarin fayil, rajistar Windows, kantin takaddun shaida, da sauransu.

Shell da yanayin ci gaba

Windows PowerShell yana wanzuwa a cikin nau'i biyu: ban da na'urar wasan bidiyo tare da harsashi na umarni, akwai haɗin haɗin rubutun (ISE). Don samun dama ga layin umarni, kawai zaɓi gajeriyar hanyar da ta dace daga menu na Windows ko gudanar da powershell.exe daga menu na Run. Taga blue zai bayyana akan allon, wanda zai bambanta da iyawa daga antediluvian cmd.exe. Akwai ƙaddamarwa ta atomatik da sauran fasalulluka waɗanda aka saba da masu amfani da harsashi na tsarin Unix.

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli

Don yin aiki tare da harsashi, kuna buƙatar tuna wasu gajerun hanyoyin keyboard:

  • Kibiyoyin sama da ƙasa suna gungurawa cikin tarihi don maimaita umarnin da aka buga a baya;
  • Kibiya dama a ƙarshen layi tana sake rubuta halin umarni da ya gabata ta hali;
  • Ctrl+Home yana share rubutun da aka buga daga wurin siginan kwamfuta zuwa farkon layin;
  • Ctrl+End yana goge rubutu daga siginan kwamfuta zuwa ƙarshen layi.

F7 yana nuna taga tare da rubutattun umarni kuma yana ba ku damar zaɓar ɗayansu. Na'urar wasan bidiyo kuma tana aiki tare da zaɓin rubutu tare da linzamin kwamfuta, kwafin-manna, sanya siginan kwamfuta, gogewa, sararin baya - duk abin da muke so.

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli
Windows PowerShell ISE cikakken yanayin ci gaba ne tare da editan lambar da aka zayyana da tambarin daidaitawa, maginin umarni, ginanniyar gyara, da sauran abubuwan jin daɗin shirye-shirye. Idan ka rubuta saƙo bayan sunan umarni a cikin editan mahalli na ci gaba, za ka sami duk zaɓuɓɓukan da ake da su a cikin jerin zaɓuka tare da nunin nau'in. Kuna iya ƙaddamar da PowerShell ISE ta hanyar gajeriyar hanya daga menu na tsarin, ko amfani da fayil mai aiwatarwa powershell_ise.exe.

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli

Cmdlets 

A cikin Windows PowerShell, abin da ake kira. cmdlets. Waɗannan azuzuwan .NET na musamman waɗanda ke ba da ayyuka iri-iri. Ana kiran su Action-Object (ko Verb-Noun, idan kun fi so), kuma hanyar haɗin da aka raba ta yi kama da predicate da batun a cikin jumlolin harshe na halitta. Misali, Get-Help a zahiri yana nufin "Samu-Taimako", ko a cikin mahallin PowerShell: "Show-Help". A zahiri, wannan kwatankwacin umarnin mutum ne a cikin tsarin Unix, kuma dole ne a nemi littattafan a cikin PowerShell ta wannan hanyar, kuma ba ta hanyar kiran cmdlets tare da maɓallin --help ko /? Kar a manta game da takaddun PowerShell na kan layi: Microsoft yana da cikakkun bayanai.

Baya ga Get, cmdlets kuma suna amfani da wasu kalmomi don nuna ayyuka (kuma ba kawai fi'ili ba, magana sosai). A cikin jerin da ke ƙasa mun ba da wasu misalai:

Add - ƙara;
Clear - mai tsabta;
Enable - kunna;
Disable - kashewa;
New - halitta;
Remove - share;
Set - tambaya;
Start - gudu;
Stop - tsayawa;
Export - fitarwa;
Import - shigo da kaya.

Akwai tsarin, mai amfani da cmdlets na zaɓi: sakamakon aiwatarwa, duk suna mayar da wani abu ko jerin abubuwa. Ba su da hankali, watau. daga mahangar mai fassarar umarni, babu bambanci tsakanin Get-Help da samun taimako. Ana amfani da alamar ';' don rabuwa, amma ana buƙatar kawai idan an aiwatar da cmdlets da yawa akan layi ɗaya. 

Windows PowerShell cmdlets an haɗa su zuwa modules (NetTCPIP, Hyper-V, da sauransu), kuma akwai cmdlet Get-Command don bincika ta abu da aiki. Kuna iya nuna taimako don shi kamar haka:

Get-Help Get-Command

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli

Ta hanyar tsoho, umarnin yana nuna taimako mai sauri, amma ana wuce sigogi (hujja) zuwa cmdlets idan an buƙata. Tare da taimakonsu, zaku iya, alal misali, samun cikakkun bayanai (-Detailed parameter) ko cikakken (-Full) taimako, da kuma nunin misalan (-Misalai):

Get-Help Get-Command -Examples

Taimako a cikin Windows PowerShell ana sabunta shi ta hanyar Sabunta-Taimako cmdlet. Idan layin umarni ya zama tsayi da yawa, za a iya canja wurin gardamar cmdlet zuwa na gaba ta hanyar rubuta halin sabis '''' kuma danna Shigar - kawai gama rubuta umarni akan layi ɗaya kuma ci gaba akan wani ba zai yi aiki ba.

Ga wasu misalan cmdlets gama gari: 

Get-Process - nuna tafiyar matakai a cikin tsarin;
Get-Service - nuna ayyuka da matsayin su;
Get-Content - Nuna abubuwan da ke cikin fayil ɗin.

Don cmdlets akai-akai da abubuwan amfani na waje, Windows PowerShell yana da gajerun kalmomin ma'ana - laƙabi. Misali, dir wani laƙabi ne na Get-ChildItem. Hakanan akwai kwatankwacin umarni daga tsarin Unix a cikin jerin ma'ana (ls, ps, da sauransu), kuma ana kiran Get-Help cmdlet ta umarnin taimako. Ana iya ganin cikakken jerin ma'ana ta amfani da Get-Alias ​​​​cmdlet:

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli

Rubutun, Ayyuka, Modules, da Harshen PowerShell

Ana adana rubutun Windows PowerShell azaman fayilolin rubutu na fili tare da tsawo na .ps1. Ba za ku iya gudanar da su ta danna sau biyu ba: kuna buƙatar danna-dama don buɗe menu na mahallin kuma zaɓi "Run a PowerShell". Daga na'ura wasan bidiyo ko dai dole ne ka saka cikakken hanyar zuwa rubutun, ko kuma je zuwa kundin adireshin da ya dace kuma rubuta sunan fayil. Rubutun gudu shima yana iyakance ta tsarin tsarin, kuma don bincika saitunan yanzu zaku iya amfani da Get-ExecutionPolicy cmdlet, wanda zai dawo da ɗayan dabi'u masu zuwa:

Restricted - ƙaddamar da rubutun an kashe (ta tsohuwa);
AllSigned - kawai ƙaddamar da rubutun da amintaccen mai haɓaka ya sanya hannu ne aka yarda;
RemoteSigned - ba da izinin gudanar da sa hannu da rubutun kansa;
Unrestricted - yarda ya gudanar da kowane rubutun.

Mai gudanarwa yana da zaɓuɓɓuka biyu. Mafi amintaccen ya haɗa da sanya hannu kan rubutun, amma wannan babban sihiri ne - za mu magance shi a cikin labarai na gaba. Yanzu bari mu ɗauki hanyar mafi ƙarancin juriya kuma mu canza manufofin:

Set-ExecutionPolicy RemoteSigned

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli
PowerShell zai buƙaci a gudanar da shi azaman mai gudanarwa don yin wannan, kodayake zaku iya canza manufofin mai amfani na yanzu tare da saiti na musamman.

An rubuta rubutun a cikin yaren shirye-shiryen da ke da alaƙa da abu, waɗanda aka ba da sunayen umarnin su bisa ga ka'ida ɗaya da cmdlets ɗin da aka tattauna a baya: "Action-Object" ("Verb-Noun"). Babban manufarsa ita ce sarrafa ayyukan gudanarwa, amma cikakken harshe ne da aka fassara wanda ke da dukkan abubuwan da suka dace: tsalle-tsalle, madaukai, masu canji, tsararru, abubuwa, sarrafa kuskure, da sauransu. Duk wani editan rubutu ya dace da rubutun rubutun, amma ya fi dacewa don gudanar da Windows PowerShell ISE.

Kuna iya ƙaddamar da sigogi zuwa rubutun, sanya su da ake buƙata, kuma saita ƙimar tsoho. Bugu da ƙari, Windows PowerShell yana ba ku damar ƙirƙira da kira ayyuka kamar yadda cmdlets, ta amfani da aikin ginawa da takalmin gyaran kafa. Rubutun da ke da ayyuka ana kiransa module kuma yana da tsawo na .psm1. Dole ne a adana kayayyaki a cikin kundayen adireshi da aka ayyana a cikin masu canjin yanayi na PowerShell. Kuna iya duba su tare da umarni mai zuwa:

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

Masu Aikata

A cikin misali na ƙarshe, mun yi amfani da ƙirar da aka saba da masu amfani da harsashi na Unix. A cikin Windows PowerShell, mashaya na tsaye kuma yana ba ku damar ƙaddamar da fitarwa na umarni ɗaya zuwa shigar da wani, amma akwai babban bambanci a aiwatar da bututun: yanzu ba mu magana game da saitin haruffa ko wasu rubutu ba. Gina-ginin cmdlets ko ƙayyadaddun ayyuka masu amfani suna mayar da abubuwa ko tsararrun abubuwa, kuma suna iya karɓar su azaman shigarwa. Kamar harsashi na Bourne da magadansa da yawa, PowerShell yana amfani da bututun mai don sauƙaƙe ayyuka masu rikitarwa.

Misali mafi saukin bututun ya yi kama da haka:

Get-Service | Sort-Object -property Status

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli
Da farko, ana aiwatar da cmdlet na Get-Service, sannan duk sabis ɗin da aka karɓa ana wuce shi zuwa cmdlet ɗin-Object don daidaitawa ta hanyar dukiya. Wace hujja ce sakamakon sashin da ya gabata na bututun bututun ya dogara da nau'in sa - yawanci shine InputObject. Za a tattauna wannan batu dalla-dalla a cikin labarin da aka keɓe ga yaren shirye-shirye na PowerShell. 

Idan ana so, zaku iya ci gaba da sarkar kuma ku wuce sakamakon Tsarin-Object zuwa wani cmdlet (za a kashe su daga hagu zuwa dama). Af, masu amfani da Windows suma suna da damar yin amfani da ƙirar da suka saba da duk Unixoids don fitowar shafi-bi-shafu: 

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

Gudun ayyuka a bango 

Sau da yawa, yana da mahimmanci don gudanar da wani umarni a bango, don kada a jira sakamakon kisa a cikin zaman harsashi. Windows PowerShell yana da cmdlets da yawa don wannan harka:

Start-Job - kaddamar da aikin bango;
Stop-Job - dakatar da aikin bango;
Get-Job - duba jerin ayyukan baya;
Receive-Job - kallon sakamakon aiwatar da aikin baya;
Remove-Job - goge aikin bango;
Wait-Job - canja wurin aikin bango baya zuwa na'ura wasan bidiyo.

Don fara aikin bango, muna amfani da Start-Job cmdlet kuma mu ƙididdige umarni ko saitin umarni a cikin takalmin gyaran kafa:

Start-Job {Get-Service}

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli
Ana iya sarrafa ayyukan bayan fage a cikin Windows PowerShell ta hanyar sanin sunayensu. Da farko, bari mu koyi yadda ake nuna su:

Get-Job

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli
Yanzu bari mu nuna sakamakon aikin Ayuba1:

Receive-Job Job1 | more

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli
Yana da sauqi qwarai.

aiwatar da umarni mai nisa

Windows PowerShell yana ba ku damar aiwatar da umarni da rubuce-rubuce ba kawai akan kwamfutar gida ba, har ma akan kwamfuta mai nisa, har ma a kan duka rukunin injuna. Akwai hanyoyi da yawa don yin haka:

  • Yawancin cmdlets suna da siga -ComputerName, amma ta wannan hanyar ba zai yi aiki ba, alal misali, don ƙirƙirar jigilar kaya;
  • Cmdlet Enter-PSSession yana ba ku damar ƙirƙirar zaman hulɗa akan na'ura mai nisa; 
  • Amfani da cmdlet Invoke-Command za ka iya gudanar da umarni ko rubutun akan kwamfutoci ɗaya ko fiye masu nisa.

Sigar PowerShell

PowerShell ya canza da yawa tun farkon fitowar sa a cikin 2006. Ana samun kayan aikin don tsarin da yawa da ke gudana akan dandamali daban-daban na hardware (x86, x86-64, Itanium, ARM): Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008/2008 R2, Windows 7, Windows 8, Windows 8.1, Windows RT, Windows RT 8.1, Windows Server 2012/2012 R2, Windows 10, Windows Server 2016, GNU/Linux da OS X. Sabon sakin 6.2 da aka saki a ranar 10 ga Janairu, 2018. Rubutun da aka rubuta don nau'ikan da suka gabata suna iya yin aiki a cikin sigogin baya, amma mayar da baya na iya zama matsala saboda PowerShell ya gabatar da adadi mai yawa na sabbin cmdlets a cikin shekarun haɓakawa. Kuna iya gano nau'in harsashi na umarni da aka shigar akan kwamfutar ta amfani da kayan PSVersion na madaidaicin ginanniyar $PSVersionTable:

$PSVersionTable.PSVersion

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli
Hakanan zaka iya amfani da cmdlet:

Get-Variable -Name PSVersionTable –ValueOnly

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli
Haka ake yi da Get-Host cmdlet. A zahiri, akwai zaɓuɓɓuka da yawa, amma don amfani da su kuna buƙatar koyon yaren shirye-shiryen PowerShell, wanda shine abin da za mu yi a ciki. labari na gaba

Sakamakon 

Microsoft ya yi nasarar ƙirƙirar harsashi mai ƙarfi tare da ingantaccen yanayin haɗaɗɗiyar don haɓaka rubutun. Ya bambanta da kayan aikin da muka saba da mu a duniyar Unix ta hanyar haɗin kai mai zurfi tare da tsarin aiki na iyalin Windows, da kuma software na su da kuma dandalin .NET Core. Ana iya kiran PowerShell harsashi mai daidaita abu saboda cmdlets da ayyukan da aka ayyana mai amfani suna dawo da abubuwa ko tsararrun abubuwa kuma suna iya ɗaukar su azaman shigarwa. Muna tsammanin duk masu gudanar da uwar garken akan Windows yakamata su mallaki wannan kayan aikin: lokacin ya wuce lokacin da zasu iya yin ba tare da layin umarni ba. Ana buƙatar babban harsashi na wasan bidiyo musamman akan VPS ɗinmu mai ƙarancin kuɗi yana gudana Windows Server Core, amma wannan labarin daban ne.

Menene Windows PowerShell kuma menene ake ci dashi? Sashe na 1: Maɓalli Maɓalli

Masu amfani da rajista kawai za su iya shiga cikin binciken. Shigadon Allah.

Waɗanne batutuwa ne ya kamata a fara tattauna a talifi na gaba a cikin jerin?

  • 53,2%Shirye-shirye a cikin PowerShell123

  • 42,4%Ayyuka na PowerShell98 da Moduloli

  • 22,1%Yadda ake sa hannu kan rubutun naku?51

  • 12,1%Yin aiki tare da ma'ajiyar ajiya ta hanyar masu samarwa (masu samarwa)28

  • 57,6%Gudanar da Kwamfuta ta atomatik tare da PowerShell133

  • 30,7%Gudanar da software da haɗa abubuwan aiwatar da PowerShell a cikin samfuran ɓangare na uku71

Masu amfani 231 sun kada kuri'a. Masu amfani 37 sun kaurace.

source: www.habr.com

Add a comment