
SPAWN: PARALLELISE SHELL COMMANDS
=================================

spawn is a simple parallel execution utility written to appeal to the
Unix mindset.

spawn reads shell command lines from stdin, one per line, and then
executes them as maximum of N child processes in parallel, and waits
for all of the children to exit.

If a child process fails with a non-zero exit code, no new children
are spawned. Then spawn waits for all existing children to exit and
returns the failed exit code.

USAGE
=====

$ spawn [-v] [-h] [-jN]

with command lines piped or redirected to stdin, one per line.

-v   Verbose output
-h   Help text
-jN  Run at most N commands in parallel at any given time. Defaults to
     0 (zero) which means infinite number of child processes.

EXAMPLE: ENCODE WAVS TO OGGS IN PARALLEL
========================================

$ ls -1 *.wav | while read ; do echo "oggenc -q6 \"$REPLY\"" ; done | spawn -j4

This should push a nice, effective load into a dual-core machine and
get your music oggified in a breeze.


ABOUT
=====

Written by Simo Melenius in 2008.

Released under GPLv3.

First version uploaded to Google Code in Dec 2008.
