Upgrade & Secure Your Future with DevOps, SRE, DevSecOps, MLOps!

We spend hours on Instagram and YouTube and waste money on coffee and fast food, but won’t spend 30 minutes a day learning skills to boost our careers.
Master in DevOps, SRE, DevSecOps & MLOps!

Learn from Guru Rajesh Kumar and double your salary in just one year.


Get Started Now!

Shell Scripting Tutorials: Looping & Iteration statatement using while


The bash while loop is a control flow statement that allows code or commands to be executed repeatedly based on a given condition.

Most languages have the concept of loops: If we want to repeat a task twenty times, we don’t want to have to type in the code twenty times, with maybe a slight change each time.
As a result, we have for and while loops in the Bourne shell.


Types of Loops in Shell Scripting



Syntax of Shell Scripting



Control Flow of While Loop


Example of While Loop in Shell Script



Boolean Operators When Working With Shell Scripts


Apart from the boolean operators that you’ve seen in other programming languages, including ==, <, >, <=, >=, etc., these are shell script specific operators. The major usage difference is that these operators will only work when numeric values are provided. With string value, the operation will simply fail.

OperatorDescriptionExample
-neChecks if both operands are not equal[ 1 -ne 2 ] is TRUE
eqChecks if both the operands are equal[ 1 -eq 2 ] is FALSE
ltCheck if the left operand is lesser than the right operand[1-lt 2 ] is TRUE
gtCheck if the left operand is greater than the right operand[1-gt 2 ] is FALSE
leCheck if the left operand is less than or equal to the right.[1-le 2 ] is TRUE
geCheck if the left operand is greater than or equal to the right.[1-ge 2 ] is FALSE

Creating a While Loop in Shell Script

A while loop doesn’t have a repetition limit by default. We have to explicitly provide it a condition that at some point during the code execution, will turn to false. Else you’ll have a loop that doesn’t end unless an interrupt signal is sent.

Save the script above by any name with the .sh extension. To run the file, you can either run it with the bash command like bash <filename>.sh or make the file executable using the chmod command. To make the script executable, run chmod +x <filename>.sh and then ./<filename>.sh will allow you to run the script.

Let’s understand the script line by line.

  • i=0 – Here we set the variable $i to 0. Learn more about variables in our previous tutorial
  • while [ $i -le 10 ] – Run the while loop only until the variable $i is lesser than or equal to 10. So this loop will run 11 times including the ZERO-th run.
  • do – Marks the beginning of the while loop in shell scripts
  • echo True – A simple command that will print the word “True” on our terminal
  • ((i++)) – C style variable increments to add 1 to the variable i with every loop. There are various other ways to perform an increment include $i=((i+1)), ((i=i+1)), etc. Feel free to use either one.
  • done – Marks the end of the while loop
  • echo False – This again simply prints out the word False on the screen to indicate that condition has now turned false.

Example of nested While Loop


Subscribe
Notify of
guest
0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments

Certification Courses

DevOpsSchool has introduced a series of professional certification courses designed to enhance your skills and expertise in cutting-edge technologies and methodologies. Whether you are aiming to excel in development, security, or operations, these certifications provide a comprehensive learning experience. Explore the following programs:

DevOps Certification, SRE Certification, and DevSecOps Certification by DevOpsSchool

Explore our DevOps Certification, SRE Certification, and DevSecOps Certification programs at DevOpsSchool. Gain the expertise needed to excel in your career with hands-on training and globally recognized certifications.

0
Would love your thoughts, please comment.x
()
x