Below is simple bash script which shows the way to make any loop execute in background, with this approach one can make the script to perform multiple things at the same time .... somewhat similar to multi threading.
In the example below, the '&' at the end of the first loop which makes this loop to go into background and at the same time second loop also gets started which makes both the loop to operate simultaneously.
In the example below, the '&' at the end of the first loop which makes this loop to go into background and at the same time second loop also gets started which makes both the loop to operate simultaneously.
Source: cat background-loop.sh
#!/bin/bash
for i in 1 2 3 4 5 6 7 8 9 10; do
echo -n $i
done &
for i in a b c d e f g h i j k; do
echo -n $i
done
echo
Output: ./background-loop.sh
abcdef1gh23ij4k5
Practical example: you can use above approach to copy some set of files to some other server or storage (backup) and at the same time you can perform the ftp job to copy other set of files to ftp server.
#!/bin/bash
for i in 1 2 3 4 5 6 7 8 9 10; do
echo -n $i
done &
for i in a b c d e f g h i j k; do
echo -n $i
done
echo
Output: ./background-loop.sh
abcdef1gh23ij4k5
Practical example: you can use above approach to copy some set of files to some other server or storage (backup) and at the same time you can perform the ftp job to copy other set of files to ftp server.
source:http://linuxpoison.blogspot.com/2012/08/13578167758732.html