#!/bin/bash function trp_term(){ echo pkill -P $pids for j in $pids ; do pkill -P $j kill -SIGTERM $j done } trap trp_term SIGINT SIGTERM pids="" for i in /etc/docker-init.d/* ; do [ ! -f $i ] && break $i & pids="$pids $!" done wait $pids # TODO: call start scripts like "foo.sh start" and "foo.sh stop" to avoid pkill