pexec1
Executing commands in parallel
Usage
pexec {[options]
[{-c | -m}]
[--]
command
[arguments] | 'compound
command'}
Overview
Execute commands or shell scripts in parallel on a single host or on remote hosts using a remote shell.
Options
General options:
-
-h, --help -
Gives general summary about the command line options.
-
--long-help -
Gives a detailed list of command line options.
-
--version -
Gives some version information about the program.
-
-s, --shell <shell> -
Full path (e.g. /bin/sh) of the shell or interpreter to be used for script execution.
-
-c, --shell-command -
Use the specified shell to interpret the command(s) instead of direct execution.
-
-m, --multiple-command -
Allow multiple individual shell command scripts to be executed in parallel with the variation of the parameters.
-
-e, --environment <variable> -
Name of an environmental variable which is set to the respective parameter before each execution.
-
-n, --number <number> -
The maximal number of processes running simultaneously. The <number> itself can even be a complex specification of remote hosts (see documentation for more details).
-
-C, --control <port> -
The control port of a hypervisor daemon (full path of a UNIX socket or an INET host specification).
-
-p, --list <list> -
The single-argument form of main parameter list.
-
-r, --parameters <list> -
The multiple-argument form of the main parameter list.
-
-f, --listfile <file> -
The main parameter list file.
-
-w, --column <index> -
The column index from where the parameters should be taken if they are read from a parameter file.
-
-t, --complete -
Threat the whole line as a single parameter if the parameters are read from a file.
-
-z, --nice -
Sets the scheduling priority of pexec and all children (executed processes) to the priority defined by this nice value.
-
-- -
A marker after which the command to execute begins.
Redirecting standard input, output and error:
-
-i, --input <input> -
The (optionally formatted) name of the input file which is used for redirecting the standard input.
-
-o, --output <output> -
The (optionally formatted) name of the output file which is used for redirecting the standard output.
-
-u, --error <output> -
The (optionally formatted) name of the output error file, which is used for redirecting the standard error.
-
-R, --normal-redirection -
Equivalent to specifying
--output-,--error- and--input/dev/null.
-
-a, --output-format <format> -
The format of the final standard output redirection if the output of all of the processes are gathered into the same file.
-
-b, --error-format <format> -
The same final redirection format for the standard error.
-
-x, --omit-newlines -
Disable automatic newlines after the output and error formats.
Execution using remote hosts:
-
-g, --remote-shell <remote_shell> -
The name or full path of the remote shell to be used for building the tunnel between the local and the peer host(s). Default: ``/usr/bin/ssh''.
-
-P, --pexec <pexec> -
The full path of the pexec program on the remote hosts. If this option is omitted, pexec tries to figure out from the invoking syntax and/or the current path.
-
-T, --tunnel -
Internal use only (pexec will start in tunnel daemon mode).
Remote control, mutual exclusions and atomic command execution:
-
-y, --bind <port> -
This option lets pexec to be remote controlled via INET or UNIX domain sockets.
-
-E, --pexec-connection-variable <env> -
This option overrides the default environment name PEXEC_REMOTE_PORT to the specified value, which is used by the ``-p|--connect auto'' combination to determine the control socket with which the running pexec instance can be controlled.
-
-j, --remote -
Used to remote control and/or poll the status of other running instances of pexec.
-
-p, --connect <port> -
Remote control port to connect to.
-
-t, --status -
Prints the actual status of the running jobs in a human-readable form.
-
-l, --lock <mutex> -
Locks the specified mutex (if the mutex is not locked by someone else, otherwise it will block until the mutex is released).
-
-u, --unlock <mutex> -
Unlocks the specified mutex.
-
-m, --mutex <mutex> -
Name of the mutex.
-
-d, --dump <filename> -
Dump the content of the given file to standard output, if ``-m|--mutex'' is given, this will be atomic.
-
-s, --save <filename> -
Save the content of standard input to the given file, if ``-m|--mutex'' is given, this will be atomic.
-
-a, --atomic <command> -
Execute the given command. If ``-m|--mutex'' is given, the exectution is going to be atomic with respect to that mutex.
Hypervisor mode:
-
-H, --hypervisor -
Starts pexec in hypervisor mode.
-
-C, --control <port> -
The control port used by the hypervisor.
-
-l, --load <window> -
Use load also to limit the number of simultaneous processes with the specified load average interval (0, 1 or 2, or 1min, 5min or 15min, respectively).
-
-f, --fifo -
First in first out queue processing.
-
-s, --lifo -
Last in first out (stack) queue processing (default).
Logging:
-
-L, --log <file> -
The name of the log file.
-
-W, --log-level <level> -
The logging level.
-
-V, --verbose -
Increase the log level by one.
Releases
8 releases since Debian 6.0 (Squeeze); the text changed 6 times.