Shell Scripting - For Loops
Inhoudsopgave:
Lussen zijn een van de fundamentele concepten van programmeertalen. Lussen zijn handig wanneer u een reeks opdrachten steeds opnieuw wilt uitvoeren totdat aan een specifieke voorwaarde is voldaan.
In scripttalen zoals Bash zijn lussen handig voor het automatiseren van repetitieve taken. Er zijn 3 basis lusconstructies in Bash scripting, voor lus, terwijl lus en tot lus.
Deze tutorial legt de basis uit van de kassa in Bash.
Bash tot Loop
De kringloop wordt gebruikt om een bepaalde set opdrachten uit te voeren, zolang de gegeven voorwaarde als onwaar evalueert.
De Bash till-lus heeft de volgende vorm:
until do done
De voorwaarde wordt geëvalueerd voordat de opdrachten worden uitgevoerd. Als de voorwaarde onwaar is, worden opdrachten uitgevoerd. Als dit niet het geval is, wordt de lus beëindigd en wordt de programmabesturing doorgegeven aan de opdracht die volgt.
In het onderstaande voorbeeld drukt de lus bij elke iteratie de huidige waarde van de variabele
counter
en verhoogt de variabele met één.
#!/bin/bash counter=0 until do echo Counter: $counter ((counter++)) done
De lus wordt herhaald zolang de
counter
een waarde groter dan vier heeft. Het script zal de volgende uitvoer produceren:
Counter: 0 Counter: 1 Counter: 2 Counter: 3 Counter: 4 Counter: 5
Bash tot Loop Voorbeeld
Het volgende script kan handig zijn als je git host downtime heeft en in plaats van
git pull
meerdere keren handmatig te typen totdat de host online is, kun je het script een keer uitvoeren. Het zal proberen de repository op te halen totdat deze succesvol is opgehaald.
#!/bin/bash until git pull &> /dev/null do echo "Waiting for the git host…" sleep 1 done echo -e "\nThe git repository is pulled."
Het script zal "Wachten op de git host…" afdrukken en een seconde slapen totdat de git host online gaat. Zodra de repository is opgehaald, wordt afgedrukt: "De git-repository is opgehaald.".
Waiting for the git host… Waiting for the git host… Waiting for the git host… The git repository is pulled.
Conclusie
De
while
en
until
lussen zijn vergelijkbaar met elkaar, met als belangrijkste verschil dat de
while
lus itereert zolang de voorwaarde
true
en de till-lus itereert zolang de voorwaarde
false
.
Dokter veroordeeld tot 33 jaar gevangenis voor kinderporno
Dr. . Richard Carino werd maandag veroordeeld in het Amerikaanse District Court voor het Midden District van Florida nadat hij op 10 juli schuldig was bevonden.
Google Fast Flip zal tot roem, niet tot pacificatie leiden, uitgevers
De optimistische hoop dat Fast Flip de nieuwsindustrie zal redden, is ongegrond - en ronduit verkeerd.
Bash voor lus
Er zijn 3 basis lusconstructies in Bash scripting, voor lus, terwijl lus en tot lus. In deze tutorial behandelen we de basisprincipes van for loops in Bash, evenals de break- en continue-instructies om de loop van een loop te wijzigen.







