function simple_report { local generator="$1" local filter="${2:-cat}" # Create fd12 (sending empty output), execute checks (writting extra info on fd12), print main info and store extra info into variable, wait for termination of async checks. { chmod +w /dev/fd/12 eval "$generator 12>/dev/fd/12 | $filter" report=$(cat<&12) } 12<