do while in bash code example
Example 1: while loop bash
while true;
do
#code
done
Example 2: shell script:while done
# The syntax is as follows:
while [ condition ]
do
command1
command2
command3
done
# command1 to command3 will be executed repeatedly till the 'condition'
# is true.
# The argument for a while loop can be any boolean expression.
# Infinite loop occurs when the conditional never evaluates to false.
# Here is the while loop for a one-liner syntax:
while [ condition ]; do commands; done
while control-command; do COMMANDS; done
# For example, the following while loop will print 'welcome x times' 5 times
# on the screen:
x=1
while [ $x -le 5 ]
do
echo "Welcome $x times"
x=$(( $x + 1 ))
done
# as one-liner:
x=1; while [ $x -le 5 ]; do echo "Welcome $x times" $(( x++ )); done
# Here is a sample shell code to calculate factorial using while loop:
counter=$1
factorial=1
while [ $counter -gt 0 ]
do
factorial=$(( $factorial * $counter ))
counter=$(( $counter - 1 ))
done
echo $factorial
# To run just type:
$ chmod +x script.sh
$ ./script.sh 5
Example 3: linux while loop
while true;
do
#code
;done
Example 4: for while bash
Use for in bash for iterating words in a string or values in an array as:
for value in {1, 2, 3}; do echo $value; done
for value in $(cat arguments_files.txt); do [some_command]; done
And use while for iterating lines from a pipe output as:
cat arguments_file.txt | while read line; do [some_command]; done
Example 5: bash do-while
while : ; do
ACTION_CODE
[[ CONDITION_STATEMENT ]] || break
done
Example 6: bash loop counter
TEMPFILE=/tmp/$$.tmp
echo 0 > $TEMPFILE
# Loop goes here
# Fetch the value and increase it
COUNTER=$[$(cat $TEMPFILE) + 1]
# Store the new value
echo $COUNTER > $TEMPFILE
# Loop done, script done, delete the file
unlink $TEMPFILE