Android

Basa tills slingan

Bash until Loop

Bash until Loop

Innehållsförteckning:

Anonim

Loops är ett av de grundläggande begreppen för programmeringsspråk. Loops är praktiska när du vill köra en serie kommandon om och om igen tills ett specifikt villkor är uppfyllt.

I skriptspråk som Bash är slingor användbara för att automatisera upprepade uppgifter. Det finns tre grundläggande slingkonstruktioner i Bash-skript, för loop, medan loop och tills loop.

Denna handledning förklarar grunderna för tills loopen i Bash.

Bash tills Loop

Fram-slingan används för att utföra en given uppsättning kommandon så länge det givna villkoret utvärderas till felaktigt.

Bash tills loopen har följande form:

until do done

Villkoret utvärderas innan kommandona körs. Om villkoret utvärderas till falskt körs kommandon. Annars, om villkoret utvärderar till sann, kommer loopen att avslutas och programstyrningen överförs till kommandot som följer.

I exemplet nedan skriver slingan på varje iteration det aktuella värdet för den variabla counter och ökar variabeln med en.

#!/bin/bash counter=0 until do echo Counter: $counter ((counter++)) done

Loopen iterates så länge counter har ett värde större än fyra. Skriptet kommer att producera följande utgång:

Counter: 0 Counter: 1 Counter: 2 Counter: 3 Counter: 4 Counter: 5

Bash tills Loop Exempel

Följande skript kan vara användbart om din git-värd har driftstopp och istället för att manuellt skriva git pull flera gånger tills värden är online kan du köra skriptet en gång. Den kommer att försöka dra förvaret tills det lyckas dra.

#!/bin/bash until git pull &> /dev/null do echo "Waiting for the git host…" sleep 1 done echo -e "\nThe git repository is pulled."

Skriptet kommer att skriva ut "Waiting for the git host…" och sova i en sekund tills git-värden går online. När förvaret har dragits kommer det att skriva ut "Git-förvaret dras.".

Waiting for the git host… Waiting for the git host… Waiting for the git host… The git repository is pulled.

Slutsats

while och until slingor liknar varandra, med den huvudsakliga skillnaden är att while loopen iterates så länge villkoret utvärderas till true och until loopen iterates så länge villkoret utvärderas till false .

bash loop terminal