For one reason or the other, you may wish to run a command repeatedly for several times in Linux. This guide will discuss some of the common and effective ways to achieve just that. Let’s consider the first method.
Note that if you intend to run a command after command after every x seconds, you can check out – How to Run or Repeat a Linux Command Every X Seconds
Run a Command Multiple Times in Linux using a Bash for Loop
The easiest way to repeat a command on the Bash shell is to run it in for a loop. You can use the following syntax, where a counter is a variable (you can give it a name of your choices such as i or x etc.) and n is a positive number to represent the number of times you want the command to run:
for counter in {1..n}; do yourCommand_here; done
Here is an example:
$ for x in {1..10}; do echo "Tecmint.com - The #1 Linux blog $x"; done
Run a Command Multiple Times in Linux using a while Loop
Related to the previous method, a while loop can also be used to run a command many times in Linux using the following syntax:
$ i=1; while [ $i -le n ]; do yourCommand_here; i=$(($i++)); done OR $ i=1; while [ $i -le n ]; do yourCommand_here; ((i++)); done
In the above format, i represents the counter variable, [ $i -le n ] is the test condition and n is the number of times you wish to run the command (ideally the number of times the shell will iterate through the loop.
Another important part of the while loop is i=$(($i+1)) or (($i++)) which increments the counter until the test condition becomes false.
So you can run your command many times like this (replace 10 with the number of times you wish to repeat the command):
$ i=1; while [ $i -le 10 ]; do echo "Tecmint.com - The #1 Linux blog $i";((i++)); done
Run a Command Multiple Times Using seq Command
The third means of running a command several times in Linux is by using the seq command which prints a sequence of numbers incrementally in conjunction with the xargs command in this form:
$ seq 5 | xargs -I -- echo "Tecmint.com - The #1 Linux blog"
To add the count at the end of each command, use this syntax:
$ seq 5 | xargs -n 1 echo "Tecmint.com - The #1 Linux blog"
Also, check these related articles:
That’s all for now. If you know of other methods for running a command multiple times in Linux, let us know in the comments section below.
If You Appreciate What We Do Here On Jassweb, You Should Consider:
Jassweb is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit Jassweb! to search or browse the thousands of published articles available FREELY to all.
If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.
We are thankful for your never ending support.