par (1) - Linux Manuals

par: parallel command processing


par - parallel command processing


par [-defiqx] [-c  command] [-l  logfile] [-n
 #] [-p
 #] [file [file...]]


par takes a list of files to run a command on. The first line of each file begins with a colon (:) or a pound-sign (#). If a colon, the remainder of the line is a command to run for each of the subsequent lines. If a pound-sign, then each subsequent line is a (self-contained) command, unless the -c option was specified, in which case it operates as if the argument to -c had followed a colon on the first line.

In each of the cases where the lines of the file following the first are not commands (ie: colon or -c), instances of open-close braces ({}) in the command will be replaced by these values.

For example, an inputfile whose contents is:

       : echo {}




run with par like so:

       %par -q inputfile

will produce the following output (order will vary):




The command-line options are as follows:

Command to be run on each of the arguments following the command-line options, where the first line of the input file(s) begins with a pound-sign (#).
Print debugging information on standard error (stderr). Repeat the option up to three times for more verbosity.
Split args by spaces, rather than using sh -c. Note: -e is incompatible with the -i option.
No input file or STDIN, just run a quantity of the command specified with -c.
Run commands interactively through (multiple) xterm(1) processes.
Prefix of logfile name, as in prefix.N where N is the par process number ([0..]).

Default: par.log.<time>.[0..]

Number of simultaneous processes.

Default: 3

-p N
Pause N seconds between running commands.
Quiet mode. Omit the typical processing logs and do not create the log files from -l, instead the children inherit stdout and stderr from par. -q is mutually exclusive with the -x and -l options and the option appearing last will take precedence.
View par logs in real-time via an xterm(1).


par.log.T.N Log file; where T is the current time in seconds since the
epoch and N is the par process number ([0..]).


par was ported from the perl version.