while loop in Linux Shell Script
while [ condition ] do command1 command2 command3 .. .... done
Loop is executed as long as given condition is true. For e.g..the for loop program can be written using while loop as:
$cat > nt1
#Script to test while statement
if [ $# -eq 0 ]
echo "Error - Number missing form command line argument"
echo "Syntax : $0 number"
echo " Use to print multiplication table for given number"
while [ $i -le 10 ]
echo "$n * $i = `expr $i \* $n`"
i=`expr $i + 1`
Save it and try as
$ chmod 755 nt1
Above loop can be explained as follows:
|n=$1||Set the value of command line argument to variable n. (Here it's set to 7 )|
|i=1||Set variable i to 1|
|while [ $i -le 10 ]||This is our loop condition, here if value of i is less than 10 then, shell execute all statements between do and done|
|echo "$n * $i = `expr $i \* $n`"||Print multiplication table as
7 * 1 = 7
7 * 2 = 14
7 * 10 = 70, Here each time value of variable n is multiply be i.
|i=`expr $i + 1`||Increment i by 1 and store result to i. ( i.e. i=i+1)
Caution: If you ignore (remove) this statement than our loop become infinite loop because value of variable i always remain less than 10 and program will only output
7 * 1 = 7
E (infinite times)
Loop stops here if i is not less than 10 i.e. condition of loop is
not true. Hence
- Data Science
- Cloud Computing
- Java Beans
- Mac OS X
- Office 365
- Tech Reviews
smskannel SMS gateway run in background
Running jar files in background in ssh window
Can't locate ExtUtils/MakeMaker.pm in @INC ...
Could not open '': No such file or directory at lib/ExtUtils/MM_Unix.pm line 2697
make: Nothing to be done for `all'.
How to burn your CD / DVD ISO image using Nero Burning ROM (Ahead Software) on Windows
How to burn your CD / DVD ISO image using Media Creator (Adaptec/Roxio) on Windows
How to burn your CD / DVD ISO image using Nero Express (Ahead Software) on Windows
How to burn your CD / DVD ISO image using NISO Recorder V2 Power Toy on Windows
Compiling and Installing software from source in Linux
Installing using Debian apt-get in Linux