So i have like 100 test cases
for test in test_list
do
sh test &
done
wait
But i want 5 to run at a time, rather than all 100 as i end up with brokenpipe errors if i run too many at 1 time.
Is there a way to always have 5 running. So when 1 of the 5 finished, 1 more starts until we complete?