Using until
The until command is similar to the while command. The given statements in the loop are executed as long as they evaluate the condition as true. As soon as the condition becomes false, then the loop is exited.
The syntax is as follows:
until command
do
command(s)
doneIn the following script until_01.sh, we are printing numbers 0-9 on screen. When the value of variable x becomes 10, then the until loop stops executing:
#!/bin/bash x=0 until [ $x -eq 10 ] do echo $x x=`expr $x + 1` done
Let's test the program:
$ chmod +x until_01.sh $ ./until_01.sh
The following will be the output after executing the preceding commands:
0 1 2 3 4 5 6 7 8 9
In the following script until_02.sh, we ask the user to input text. We are printing entered text on the screen. When the user enters the text quit, the until loop ends the iterations:
#!/bin/bash INPUT="" until [ "$INPUT" = quit ] do echo "" echo 'Enter a word (quit to exit) : ' read INPUT echo "You typed : $INPUT" done
Let's test...