Úvod do PowerShell ForEach Loop

Pochopenie ForEach Loop v PowerShell, ForEach a forLoop, ktoré vykonávajú rovnaké úlohy, obidve slúžia na manipuláciu a vykonávanie toho istého kódu opakovane. Ak čítate každý prvok poľa alebo to môže byť čítanie každého riadku súboru, v takom type stavu používame foreach. Napríklad pole obsahujúce používateľov a my chceme skontrolovať používateľa s menom „Vijay“, takže musíme skontrolovať každý prvok a na to potrebujeme slučku „foreach“ a po nájdení slučky používateľa „Vijay“ sa ukončí. Ak ste sa pred akciou potrebovali pozrieť na atribúty mesta každého používateľa, môžete použiť slučku ForEach Loop a v každom meste môžete vykonávať príslušné práce. Vo verzii PowerShell 4.0 a novšej poskytuje metóda ForEach ešte rýchlejší výkon.

Syntax ForEach Loop

Nižšie je uvedená syntax

foreach ($ in $)
(


)

Vo vyššie uvedenej syntaxi vidíme, že vždy, keď sa vyberie jedna položka z Actualarray a táto položka pôjde na spracovanie vo vnútri foreach slučky. Ak je $ prázdny alebo ak v ňom nie je žiadna položka, nebude možné vykonať výpisy. PowerShell vytvorí premennú $ automaticky, keď sa spustí slučka Foreach. Napríklad slučka Foreach v nasledujúcom príklade zobrazuje hodnoty v poli $ students. V cykle for loop sme potrebovali napísať logiku, aby sme skontrolovali, či je pole prázdne alebo nie.

kód:

$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
)

Obrazovky výstupu a kódu:

Vývojový diagram pre PowerShell ForEach Loop

Nižšie je vývojový diagram pre PowerShell ForEach Loop:

Vysvetlenie vyššie uvedeného vývojového diagramu: Vyššie uvedený vývojový diagram veľmi jasne predstavuje tok. Po prvom spustení sa skontrolujú údaje (skontroluje sa, či sa prvok nachádza v poli), či sa jeho prázdna slučka zastaví. Ale ak je tam Data, bude pokračovať vo vykonávaní a spúšťa príkaz 1, príkaz 2, príkaz 3 až do posledných dát poľa. Akonáhle Array dostane prázdnu slučku, zastavte vykonávanie.

Výkon:

Vysvetlenie vyššie uvedeného výstupu: Nad obrazovkou sa zobrazuje, že ak boli v poli dva atribúty, tlačila sa dvakrát, ahoj, ale ak sme $ študentov urobili ako prázdne pole, tak sa nevytlačí, to znamená, že v prípade, že nejaký atribút je k dispozícii vo vnútri $ Študenti pole, ako to bude vykonávať príkaz bloku inak to nie je vykonávanie.

Ako funguje ForEach Loop v PowerShell?

Predpokladajme, že máme 4 prvky a chceme vynásobiť každé číslo piatimi. Predpokladajme, že máme $ a, $ b, $ c, $ d a musíme ich vynásobiť 5 tak, čo urobíme, pozri príklad:

Vzorový kód:

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

Preto sme dostali náš výsledok. Bolo by však dobré, keby sme vynásobili iba 5 položiek, predpokladajme, že bude existovať 10 000 prvkov, ktoré je potrebné vynásobiť 5, potom by bolo veľmi náročné napísať pre každú z nich.

Čo by pre to bolo ľahké riešenie? Všetko, čo musíme urobiť, je vytvoriť pole so všetkými našimi prvkami a odovzdať pole foreachom a vynásobiť každý prvok s 5. Ak chceme znásobiť číslo päť na každý z prvkov v poli, musíme prejsť cez pole. pomocou príkazu ForEach.

Tu je celý skript:

kód:

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

Výkon:

Vysvetlenie vyššie uvedeného kódu: Vo vyššie uvedených príkladoch vidíme, že sme si navzájom definovali premennú $ f a priradili sme jej všetky 4 premenné, čo z nej robí pole. Nakoniec ju odovzdávame zo slučky foreach, ktorá nám poskytla výsledok 10, 20, 45, 25. Týmto spôsobom náš život uľahčujeme, pretože v reálnom živote by existovali Laky záznamu, ktoré je potrebné upraviť, takže to nemôžeme robiť jeden po druhom, takže na ich riešenie používame slučku foreach. Jednoducho spustite a upravte toľko záznamov, koľko chcete.

Príklady v PowerShell ForEach Loop

Nižšie je uvedený príklad v PowerShell ForEach Loop:

Príklad č. 1

Opakujte si reťazec obsahujúci mená študentov a nájdite dĺžku každého reťazca v poli.

kód:

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

Výstup: Ranjan = 6, Ajay = 4, Vijay = 5, Sujit = 5, John = 4, Rakesh = 6, Hari = 4.

Príklad č. 2

Dovoľte mi uviesť jeden príklad zo skutočného života. Pri skúškach ste videli 30 známok zo 100, ktoré boli známkami úspešnosti. Predpokladajme teda, že existujú laky pre študentov a existuje jedno pravidlo, ak mu niektorý študent dostane 27 známok, dá mu 30 známok, čo znamená, že do svojich 27 známok pridá iba 3 body navyše. Takže prebehneme cez pole študentských známok a pridáme 3 známky, ak ich známky majú 27, a necháme ich prejsť skúškou, pretože 30 bodov je známkou.

kód:

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

Výstup: Boli dvaja študenti, ale manuálna kontrola 27 jazier študentov bola trochu únavná úloha, ktorú sme vyriešili.

Príklad č. 3

Jeden ďalší príklad: Nájdite všetky čísla od 1 do 100, ktoré sú úplne deliteľné číslom 10.

kód:

$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

Výkon:

záver

Na záver, príkaz foreach loop nám umožňuje vykonať príkaz alebo skupinu príkazov viackrát spolu s kontrolou dostupnosti prvkov v poli, čo znamená spustenie nasledujúceho príkazu, ak existujú nejaké prvky. Slučky Foreach sa spúšťajú iba vtedy, ak sú vo vnútri poľa nejaké prvky, čo ich odlišuje od slučky.

Odporúčané články

Toto je sprievodca PowerShell ForEach Loop. Tu diskutujeme o tom, ako funguje ForEach Loop v PowerShell?, s rôznymi príkladmi. Viac informácií nájdete aj v ďalších súvisiacich článkoch -

  1. Pre slučku v R
  2. Čo je PowerShell
  3. Použitie Powershell
  4. Ako nainštalovať PowerShell
  5. Pole v PowerShell | Príklady

Kategórie: