Hello I am working with a simulator that uses rcS scripts to boot, this is my script
cd /tests
./test1 &
./test2 &
./test3 &
./test4
exit
What I want is run all the test at the same time and that the exit command is executed only when all the previous test have finished. And not only when test 4 has finished, is this possible?. Thank you.
You can use wait:
./test1 &
./test2 &
./test3 &
./test4 &
wait
From the bash man page:
wait [n ...] Wait for each specified 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. If n is not given, all currently active child processes are waited for, and the return status is zero. If n 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.