It’s happened to all of us. A script just locks up and we’re unsure why. At
closer inspection we find that we’re written a loop that has no terminating
condition. It is an endless loop and in many cases consumes memory until it
But what if you want to do this intentionally? Happened to me the other day. I
have a command that I run multiple times a day. I grew tired of pressing up and
then hitting enter (assuming the correct command popped up next). I set out to
write a shell script to run endlessly and run the command in question when I
Another use case would be when you are writing a daemon. It needs to run in the
background, possibly sleep for a period of time before running again.
The concept of an infinite loop is pretty simple. You need a loop that has a
condition that always validates as true. Here is an example of what I did. Keep
in mind that you can consolidate this down to a single line or swap out the read
command for a sleep command if you want it to run unattended.
read -p "Press <enter> to do continue..."
echo "This is where you put your commands!!"