title: Parallelism in bash script
body: <p>I got a script that is starting up some virtual machines. After the deployment I want to install a few things on the VMs. Because these installation can take up to 6 minutes per VM. It would be much more efficient to execute these installations in parallel. In Java I would probably use Threads but in a bash script I do not know. My first approach was sth like this:</p>
  
  <pre><code>function install {
      plink -ssh -i /var/lib/one/Downloads/id_rsa_ubuntu_putty..ppk root@$1 wget https://www.dropbox.com/s/xdhnx/install.sh
      plink -ssh -i /var/lib/one/Downloads/id_rsa_ubuntu_putty..ppk root@$1 chmod 4500 install.sh
      plink -ssh -i /var/lib/one/Downloads/id_rsa_ubuntu_putty..ppk root@$1 ./install.sh
  
      echo $1 angestoßen
      }   
  
  echo -------------------------------------------------
  echo Alle VMs erfolgreich deployed
  
  for i in "${IParray[@]}"
  do
      install $i &amp;
  done
  wait
  </code></pre>
  
  <p>I created a funtion and tried to connect the function calls in the for-loop by using "&amp;" which should create subprocesses. But for some how this is not working properly. Can anybody help me out </p>