Johdanto PowerShell ForEach Loop -sovellukseen

ForEach-silmukan ymmärtäminen PowerShellissä, ForEachissa ja forLoopissa suorittavat samat tehtävät, molemmat on tarkoitettu saman koodin palaamiseen ja suorittamiseen toistuvasti. Jos luet taulukon kutakin elementtiä tai se saattaa lukea tiedoston jokaista riviä, käytämme sellaisessa tilassa olosuhteita foreach. Esimerkiksi taulukko, joka sisältää käyttäjiä ja haluamme tarkistaa käyttäjän nimellä “Vijay”, joten meidän on tarkistettava jokainen elementti, ja sitä varten tarvitsemme “foreach” -silmukan ja kerran käyttäjän “Vijay” -silmukka poistuu. Jos joudut tarkastelemaan kunkin käyttäjän kaupunkiominaisuutta ennen toimenpiteiden suorittamista, voit käyttää ForEach Loop -sovellusta ja tehdä vastaavia töitä jokaisessa kaupungissa. ForEach säästää vähän muistia ja aikaa verrattuna silmukkaan. PowerShell 4.0: n ja uudempien versioiden ForEach-menetelmä tarjoaa vielä nopeamman suorituskyvyn.

ForEach-silmukan syntaksi

Alla on syntaksi

foreach ($ in $)
(


)

Yllä olevassa syntaksissa voimme nähdä, että joka kerta, kun yksi esine Actualarraystä poimitaan, kyseinen esine menee prosessoitavaksi eturintaman silmukan sisällä. Jos $ on tyhjä tai siinä ei ole kohdetta, sitä ei käytetä lauseiden suorittamiseen. PowerShell luo muuttujan $ automaattisesti, kun Foreach-silmukka suoritetaan. Esimerkiksi Foreach-silmukka seuraavassa esimerkissä näyttää arvot $ opiskelijoiden taulukossa. Silmukkaa varten meidän piti kirjoittaa logiikka tarkistaaksemme, onko taulukko tyhjä vai ei. Etujoukon silmukka suorittaa lausekkeen lohkon, jos taulukon sisällä on elementtiä.

Koodi:

$students = ""
PS /home/ranjan> foreach ($student in $students)
(
Write-Host $student
)
output nothing, which means checking of array elements attributes are done internally by foreach loops.
$students = "ajay", "vijay", "ranjan", "akash", ”vikash”
foreach ($student in $students)
(
Write-Host $student
)

Lähtö- ja koodinäytöt:

PowerShell ForEach Loop -virtauskaavio

Alla on vuokaavio PowerShell ForEach Loop -silmukalle:

Yllä olevan vuokaavion selitys: Yllä oleva vuokaavio edustaa hyvin selvästi vuovirtausta. Kun suorittaminen alkaa ensin, se tarkistaa datan (tarkistaa onko elementti taulukossa), jos tyhjä silmukka pysähtyy. Mutta jos Data on olemassa, se jatkaa suorittamista ja suorittaa lauseen 1, lausunnon 2, lausunnon 3, kunnes taulukon viimeiset tiedot. Kun taulukko saa tyhjän silmukan, lopeta suoritus.

lähtö:

Edellä mainitun tuloksen selitys: Näytön yläpuolella on, että jos taulukon sisällä oli kaksi attribuuttia, se tulostaa kaksi kertaa, hei, mutta jos teimme $ opiskelijoista tyhjänä taulukkona ei hello tulosta, se tarkoittaa, että jos jokin ominaisuus on saatavana sisällä $ Opiskelijoiden ryhmä kuin se aikoo suorittaa lausekkeen estää muuten se ei ole suorittamassa.

Kuinka ForEach Loop toimii PowerShellissä?

Oletetaan, että meillä on 4 elementtiä ja haluamme kertoa jokaisen luvun viidellä. Oletetaan, että meillä on $ a, $ b, $ c, $ d ja meidän on kerrottava jokainen viidellä, joten mitä teemme, katso alla oleva esimerkki:

Näytekoodi:

$a=2, $b=4, $c=9, $d=5
$a * 5 =10, $b * $5=20, $c * 5=45, $d*5=25

Siksi saimme tuloksen. Mutta se oli hyvä, kunnes meillä on vain 4 tuotetta kertoa 5: llä, oletetaan, että siellä on 10000 elementtiä, jotka täytyy kertoa 5: llä, niin se olisi erittäin työläs tehtävä kirjoittaa jokaiselle.

Joten mikä olisi helppo ratkaisu siihen? Ainoa mitä meidän on tehtävä, meidän on luotava taulukko kaikilla elementeillämme ja siirrettävä taulukko foreachilla ja kerrottava jokainen elementti viidellä. Kerrota numero viisi jokaiselle taulukon elementille, meidän on kuljettava taulukon läpi käyttämällä ForEach-komentoa.

Tässä on koko kirjoitus:

Koodi:

$a = 2, $b = 4, $c = 9, $d =5
$f = $a, $b, $c, $d
Foreach ($i in $f)
(
$i * 5
)

lähtö:

Yllä olevan koodin selitys: Yllä olevissa esimerkeissä määrittelimme toisilleen muuttujan $ f ja määrittelimme sille kaikki 4 muuttujaa, mikä tekee siitä taulukon. Viimeinkin siirrämme sen esihenkilön silmukasta, joka antoi meille tuloksen 10, 20, 45, 25. Tällä tavalla teemme elämästämme helpompaa, koska tosielämässä olisi olemassa ennätysmääräisiä lakkoja, joita on muutettava, joten emme voi tehdä sitä yksitellen, joten käytämme foreach-silmukkaa käsittelemään näitä. Suorita vain kerran ja muokkaa niin monta kuin haluat.

Esimerkkejä PowerShell ForEach Loop -sivustossa

Alla on esimerkki PowerShell ForEach Loop -silmukasta:

Esimerkki # 1

Siirry joukon merkkijonoja, jotka sisältävät opiskelijoiden nimet, ja etsi jokaisen merkkijonon pituus taulukon sisällä.

Koodi:

$students = @("Ranjan", "Ajay", ”Vijay", "Sujit", "John", "Rakesh", ”Hari”)
foreach ($student in $students) (
"$student = " + $student.length
)

Lähtö: Ranjan = 6, Ajay = 4, Vijay = 5, Sujit = 5, John = 4, Rakesh = 6, Hari = 4.

Esimerkki 2

Annan teille yhden tosielämänä olevan esimerkin. Tutkimuksissa olette nähneet 30 pistettä sadasta aiemmin hyväksyttyinä. Oletetaan siis, että oppilaista on puutteita, ja on yksi sääntö, jos joku opiskelija saa 27 pistettä, antaa hänelle 30 pistettä, mikä tarkoittaa, että lisää vain 3 pistettä ylimääräistä 27 pisteeseen. Joten siirrämme läpi joukon opiskelijapisteitä ja lisäämme 3 pistettä, jos heidän arvosanojaan on 27, ja annamme heidän läpäistä tentteissä, koska 30 pistettä on läpäissyt.

Koodi:

$marks (34, 39, 49, 12, 27, 80, 23, 88, 27)
foreach ($mark in $marks) (
if ($mark -eq 27) ( $mark+3 ) else( $num)
)

Tulos: Opiskelijoita oli kaksi, mutta manuaalinen tarkistaminen lakhien opiskelijoiden kohdalla 27 pistettä oli hiukan työläs tehtävä, jonka ratkaisimme.

Esimerkki 3

Yksi esimerkki: Löydä kaikki luvut välillä 1 - 100, jotka ovat täysin jaettavissa luvulla 10.

Koodi:

$numbers (1..100)
foreach ($number in $numbers)
(
if ( -not ($number % 10) )
(
"$number is totally divisible by 10"
)
)
10 is totally divisible by 10
20 is totally divisible by 10
30 is totally divisible by 10
40 is totally divisible by 10
50 is totally divisible by 10
60 is totally divisible by 10
70 is totally divisible by 10
80 is totally divisible by 10
90 is totally divisible by 10
100 is totally divisible by 10

lähtö:

johtopäätös

Yhteenvetona voidaan todeta, että foreach-silmukkalausunto antaa meille mahdollisuuden toteuttaa käsky tai lauseiden ryhmä useita kertoja tarkistaakseen elementtien saatavuuden taulukossa, mikä tarkoittaa seuraavan käskyn suorittamista, jos elementtejä on. Foreach-silmukat käyvät vain, jos taulukon sisällä on elementtejä, mikä tekee siitä erilaisen kuin silmukan.

Suositellut artikkelit

Tämä on opas PowerShell ForEach Loop -sovellukseen. Tässä keskustellaan kuinka ForEach Loop toimii PowerShellissä?, erilaisilla esimerkeillä. Voit myös käydä läpi muiden aiheeseen liittyvien artikkeleidemme saadaksesi lisätietoja -

  1. Loopille R
  2. Mikä on PowerShell
  3. Käyttö Powershell
  4. Kuinka asentaa PowerShell
  5. Array PowerShellissä esimerkit

Luokka: