Run a bash command after some simultaneous commands?
#!/bin/bash
command1 &
command2 &
command3 &
wait
command4
wait
(without any arguments) will wait until all the backgrounded processes have exited.
The complete description of wait
in the bash
manual:
wait [-n] [n ...]
Wait for each specified child process and return its termination status. Each
n
may be a process ID or a job specification; if a job spec is given, all processes in that job's pipeline are waited for. Ifn
is not given, all currently active child processes are waited for, and the return status is zero. If the-n
option is supplied,wait
waits for any job to terminate and returns its exit status. Ifn
specifies a non-existent process or job, the return status is 127. Otherwise, the return status is the exit status of the last process or job waited for.