concurrent.sh
last updated: Feb 14, 2026
https://github.com/themattrix/bash-concurrent
A Bash function to run tasks in parallel and display pretty output as they complete.
Rather than showing the output of the programs it runs, it stuffs them into .logs/<timestamp>
One thing it has that I like and would like to steal for crun (or a successor? Is that just a port and shouldn't add functionality?) is a notion of task dependencies:
(Thought: should that be a separate tool? dep specifies a dependency tree, then runs the tasks it needs with crun if necessary or just by themselves? Is that just make?)
Start the medium task after the short task succeeds:
concurrent \
- 'My long task' sleep 10 \
- 'My medium task' sleep 5 \
- 'My short task' sleep 1 \
--require 'My short task' \
--before 'My medium task'
Its method of providing names is interesting, though it requires some acrobatics around the - specifier.
via hrbrmstr