Uvod u petlje u PowerShell-u

Uvijek će nam trebati petlje ako imamo nešto ponavljajuće radnje. U petlji ponavljamo komad koda ili bilo koju izjavu koja se ponavlja. Jedan stvarni primjer, pretpostavimo da u školi ima 20000 učenika i zbog nekog razloga, sveučilište je odlučilo dati 5 maraka dodatnih pregleda za svakog učenika. Dakle, sveučilište je odlučilo dati tih 5 maraka svakom studentu, osim onima čija je pohađanja manja od 100 dana. Sada samo pretpostavljate kako će to raditi zaposlenici, morat će provjeriti ocjene i posjećenost svake godine. Ali Ista stvar uz pomoć petlje Any, to se moglo učiniti vrlo jednostavno, stvorivši niz učenika s njihovim ocjenama i datumima pohađanja. Ovim pomoću petlje u mogućnosti smo uštedjeti dodatne napore. Dopustite nam da razumemo petlje u PowerShellu detaljno.

Vrste petlji u PowerShell-u

Postoji mnogo načina za pokretanje petlje u PowerShell-u, ali to uvijek ovisi o vašim zahtjevima i izvedivosti programa, na primjer, ako želite izvršiti barem jednom za bilo koji niz nego što bismo trebali koristiti petlje do-while, a tu je i petlja i za svakog koji je dobar .

Vrste i njihovi primjeri dati su u nastavku:

1. Dok

Dok izraz uzima uvjet kao argument i izvršavanje izraza unutar petlje, a ovisi o uvjetu, to znači da ako je uvjet uspješan, tada će izvršiti naredbu, a ne.

Sintaksa:

while(condition)
(
Statement 1
Statement 2
….
)

Primjer:

$j = 0
while($j -lt 10)
(
Write-Output $j
$j++ )

Ispod je zaslon za gore izvršenje koda

2. Učinite Dok

Učinak dok je sličan dok je razlika samo u petlji to je da će se izvršiti barem jednom, što znači da će izvršiti blok prvi put, a dok je blok ako je uvjet istinit. U donjoj sintaksi do se prvi put sigurno izvršava blok.

  • Učinite : ovaj se blok izvršava prvo i jednom kad započne izvršavanje.
  • Iako : Izvršavanje izjave 1 i izjave 2 potpuno ovisi o uspjehu uvjeta.

Sintaksa:

Do
(
Statement 1
Statement 2
….)while(condition)(
Statement 3
Statement 4
…..
)

Primjer 1:

$j = 0
do
(
Write-Output $j // this block will execute first time
$j++
)while($j -lt 10)

Primjer br. 2:

U ovom primjeru do blok će se izvršiti prvi put, čak ni uvjet nije bio istinit.

$j = 0
do
(
Write-Output $j
$j--
)while($j -gt 0)

Zaslon za oba programa prikazan je dolje

3. Do

Učinite sve dok se malo ne razlikuje od onog dok to radite dok se izvršavanje nastavi dok ne vratite negativan rezultat "dok ne blokirate". Ovdje su glavne stvari.

  • Učinite : ovaj će se blok nastaviti izvršavati sve dok se stanje bloka ne ispuni, što znači dok blok ne vrati negativnu vrijednost.
  • Do : Izvedite blok izjavu 1 i izjavu 2 dok uvjeti ne vrate negativne rezultate.

Sintaksa:

do
(
Statement 1
Statement 2
….
)until(condition)

Primjer:

$i = 0
do
(
Write-Output $i
$i++
)until($i -ge 5) //keep checking condition

U bloku "do dok" možemo vidjeti kako će se izvršavanje bloka učiniti dok uvjet "dok blok" ne vrati pozitivnu vrijednost.

Ispod je zaslon za gore izvršenje koda

4. Za

Za izjavu pokreće popis izjava nula ili više puta na temelju početne postavke. U donjoj sintaksi za for petlje nalaze se tri važna odjeljka

  • Odjeljak za inicijalizaciju : u ovom je odjeljku dodijelio početnu vrijednost za bilo koju varijablu, ovaj se odjeljak prvi put pokreće.
  • Uvjet : U dijelovima stanja pišemo svoj uvjet za koji će se petlja pokrenuti, što znači da izvršavanje bloka izraza uvijek ovisi o uspjehu dijelova uvjeta ako je uvjet istinit, a zatim će se blok izjava izvršiti na drugom mjestu.
  • Operacija : U ovom bloku možemo povećati, smanjiti ili promijeniti vrijednost inicijalizacije varijable ili bilo koje stvari prema našim zahtjevima.

Sintaksa:

for($initialisation; condition; operation)
(
Statement 1
Statement 2
….
)

Primjer 1:

for($i = 0; $i -lt 3; $i++)
(
Write-Output $i
)

Izlazni ekran gornjeg koda

Mnogo puta jedna petlja nije dovoljna da ispunimo naše zahtjeve, tako da možemo koristiti ugniježđene petlje. Trebali bismo pokušati izbjeći gniježđenje petlji, jer njihova složenost vremena može biti vrlo visoka ako se s njima ne postupa pravilno. Ispod je primjer ugniježđene petlje.

Primjer br. 2:

for($j = 0; $j -lt 3; $j++)
(
$line = ''for($j = 0; $j -lt 3; $j++)
(
$line += $j.ToString() + $j.ToString() + ' '
)
Write-Output $line
)

Izlaz: 00 11 22

5. ForEach

"Foreach" pokreće blokove izjava uzastopno do posljednje stavke niza. Dobre stvari oko forEach izjave su da ne moramo pisati bilo koji poseban kôd da bismo izdvojili niz predmeta. Općenito, „foreach“ je optimizirana verzija petlje „for“ koja daje unutarnju stavku matrice bez pisanja programa. Ovdje jednostavno provjerava postoji li stavka u nizu na kojem izvodimo petlju "foreach", je li neka stavka tu, izvršiće blokade izjave 1 i izjave 2.

Sintaksa:

foreach($arrayItems)
(
Statement 1
Statement 2
…..
)

Primjer:

$numbers = 23, 21, 22, 78
foreach($number in $numbers)
(
“$number is now =“ +$number
)

Ispod zaslona prikazano je iznad smaknuća

Prednosti petlje u PowerShell-u

Najveća prednost korištenja petlje je što smanjuje previše ručnog rada i vrlo je dobro kontrolirati veliku veličinu podataka za sličnu vrstu aktivnosti na njoj. Recimo da želim da ispisujete 1 do 1000000 i rekao sam vam da možete dodati 1 svakom broju koji je djeljiv sa 2, što je paran broj. Ako pokrenete jedan po jedan ispis i pokušate dodati 1 u svaki parni broj, trebat će vam previše vremena. Dakle, bolji i jednostavniji način koji ste predložili bilo je samo ponavljanje ovog postupka dodavanja jednog broja do postizanja 1000000. Najveća korist koju dobivamo iz petlje je ta što ponovo koristimo isti komad koda, ne zahtijevamo pisanje isti kod za lakh podataka automatski će izvršiti kod do kraja.

Ispod je nekoliko točaka prednosti

  • Povećava ponovno korištenje koda, što kôd čini manjim
  • Brži izračun za velike podatke, štedi se puno ručnog rada
  • Suvišnost koda je manja.

Primjer sa svojim prednostima

Pitanje: ispisati do 1000.

Without loop,
Write-Output 1;
Write-Output 2;
Write-Output 3;
Write-Output 4;
…so on
Till 100

With loop,
$x=1..100
foreach($y in $x)(
Write-Output $y;
)

Preporučeni članci

Ovo je vodič za Loops u PowerShell-u. Ovdje smo raspravljali o vrstama petlje u PowerShell-u, zajedno s njihovom korisnošću. I otkrili smo da su petlje vrlo moćan alat s manje napora za upotrebu istog koda. Možete također pogledati sljedeće članke da biste saznali više -

  1. Što je Shell Scripting?
  2. Funkcije niza PowerShell-a
  3. Operatori PowerShell-a
  4. Naredbe PowerShell
  5. Primjeri niza u PowerShellu

Kategorija: