xargs(1)xargs(1)NAMExargs - construct argument lists and execute command
SYNOPSIS
[options] [command [initial-arguments]]
DESCRIPTION
combines the fixed initial-arguments with arguments read from standard
input to execute the specified command one or more times. The number
of arguments read for each command invocation and the manner in which
they are combined are determined by the options specified.
command, which can be a shell file, is searched for, using the environ‐
ment variable. If command is omitted, is used.
Arguments read in from standard input are defined to be contiguous
strings of characters delimited by one or more blanks, tabs, or new‐
lines; empty lines are always discarded. Spaces and tabs can be embed‐
ded as part of an argument if escaped or quoted. Characters enclosed
in quotes (single or double) are taken literally, and the delimiting
quotes are removed. Outside of quoted strings, a backslash escapes the
next character.
The amount of memory available for the execution of command is limited
by the system parameter By default, the size of the argument list is
limited to bytes. See limits(5) and sysconf(2) for a description of
these system parameters and how their values can be determined. To
increase the available argument list space, use the option.
Each argument list is constructed starting with the initial-arguments,
followed by some number of arguments read from standard input (excep‐
tion: see or option). The and options determine how arguments are
selected for each command invocation. When none of these options is
specified, the initial-arguments are followed by arguments read contin‐
uously from standard input until an internal buffer is full, then com‐
mand is executed with the accumulated args. This process is repeated
until there are no more args. When there are option conflicts (such as
or versus the last option has precedence.
Options
The option values are:
command is executed for each nonempty number lines of arguments
from standard input. The last invocation of command
will be with fewer lines of arguments if fewer than num‐
ber remain. A line is considered to end with the first
newline the last character of the line is a blank or a
tab; a trailing blank/tab signals continuation through
the next nonempty line. The and options are mutually
exclusive. The last one specified takes effect.
This option is equivalent to the
option. is assumed if number is omitted or is given as
the empty string (). Option is forced.
Insert mode: command is executed for each line from standard input,
taking the entire line as a single arg, inserting it in
initial-arguments for each occurrence of replstr. A
maximum of 5 arguments in initial-arguments can each
contain one or more instances of replstr. Blanks and
tabs at the beginning of each line are discarded. Con‐
structed arguments must not grow larger than 255 bytes,
and option is also forced. The and options are mutually
exclusive. The last one specified takes effect.
This option is equivalent to the
option. is assumed if replstr is omitted or is given as
the empty string ().
Execute command using as many standard input arguments as possi‐
ble, up to number arguments maximum. Fewer arguments
are used if their total size is greater than size bytes,
and for the last invocation if there are fewer than num‐
ber arguments remaining. If option is also coded, each
number arguments must fit in the size limitation or ter‐
minates execution.
The maximum total size of each argument list is set to
size bytes; size must be a positive integer less than
(see limits(5), sysconf(2)). If is not coded, is taken
as the default. Note that the bytes count for size
includes one extra bytes for each argument and the count
of bytes in the command name.
Trace mode: The
command and each constructed argument list are echoed to
standard error just prior to their execution.
Prompt mode: The user is asked whether to execute
command prior to each invocation. Trace mode is turned
on to print the command instance to be executed, fol‐
lowed by a prompt. An affirmative reply (by default, an
affirmative reply is optionally followed by anything)
executes the command; anything else, including pressing
Return, skips that particular invocation of command.
Causes to terminate if any argument list would be greater than
size bytes. is forced by the options and When none of
the options or is coded, the total length of all argu‐
ments must be within the size limit.
eofstr is taken as the logical end-of-file string. Underscore
is assumed for the logical string if neither nor is
used. The value with eofstr given as the empty string (
"" ) turns off the logical string capability (underscore
is taken literally). reads standard input until either
end-of-file or the logical string is encountered.
Specify a logical end-of-file string to replace the default underscore
character. Equivalent to the option above.
terminates if it receives a return code of −1 from command or if it
cannot execute command. When command is a shell program, it should
explicitly (see sh(1)) with an appropriate value to avoid accidentally
returning with −1.
RETURN VALUE
exits with one of the following values:
All invocations of
command completed successfully.
One or more invocations of
command did not complete successfully.
The command specified was found but could not be invoked.
The command specified could not be found.
EXTERNAL INFLUENCES
Environment Variables
determines the space characters and the interpretation of text as sin‐
gle- and/or multibyte characters.
determines the language in which messages are displayed, and the local
language equivalent of an affirmative reply when the prompt option is
specified.
If or is not specified in the environment or is set to the empty
string, the value of is used as a default for each unspecified or empty
variable. If is not specified or is set to the empty string, a default
of "C" (see lang(5)) is used instead of
If any internationalization variable contains an invalid setting,
behaves as if all internationalization variables are set to "C". See
environ(5).
International Code Set Support
Single- and multibyte character code sets are supported.
EXAMPLES
Move all files from directory to directory and echo each move command
just before doing it:
Combine the output of the parenthesized commands onto one line, then
echo to the end of file
Ask the user which files in the current directory are to be archived
then archive them into one at a time:
or many at a time:
Execute (see diff(1)) with successive pairs of arguments originally
typed as shell arguments:
SEE ALSOsh(1).
STANDARDS CONFORMANCExargs(1)