213 lines
5.8 KiB
Groff
213 lines
5.8 KiB
Groff
.\" $NetBSD: xargs.1,v 1.18 2006/08/11 23:01:46 jnemeth Exp $
|
|
.\"
|
|
.\" Copyright (c) 1990, 1991, 1993
|
|
.\" The Regents of the University of California. All rights reserved.
|
|
.\"
|
|
.\" This code is derived from software contributed to Berkeley by
|
|
.\" John B. Roll Jr. and the Institute of Electrical and Electronics
|
|
.\" Engineers, Inc.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\" 3. Neither the name of the University nor the names of its contributors
|
|
.\" may be used to endorse or promote products derived from this software
|
|
.\" without specific prior written permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.\" @(#)xargs.1 8.1 (Berkeley) 6/6/93
|
|
.\"
|
|
.Dd August 11, 2006
|
|
.Dt XARGS 1
|
|
.Os
|
|
.Sh NAME
|
|
.Nm xargs
|
|
.Nd "construct argument list(s) and execute utility"
|
|
.Sh SYNOPSIS
|
|
.Nm
|
|
.Op Fl 0
|
|
.Op Fl p
|
|
.Op Fl t
|
|
.Oo Op Fl x
|
|
.Fl n Ar number
|
|
.Oc
|
|
.Op Fl s Ar size
|
|
.Op Ar utility Op Ar arguments ...
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Nm
|
|
utility reads space, tab, newline and end-of-file delimited arguments
|
|
from the standard input and executes the specified
|
|
.Ar utility
|
|
with them as arguments.
|
|
.Pp
|
|
The utility and any arguments specified on the command line are given
|
|
to the
|
|
.Ar utility
|
|
upon each invocation, followed by some number of the arguments read
|
|
from standard input.
|
|
The
|
|
.Ar utility
|
|
is repeatedly executed until standard input is exhausted.
|
|
.Pp
|
|
Spaces, tabs and newlines may be embedded in arguments using single
|
|
(``\ '\ '')
|
|
or double (``"'') quotes or backslashes (``\e'').
|
|
Single quotes escape all non-single quote characters, excluding newlines,
|
|
up to the matching single quote.
|
|
Double quotes escape all non-double quote characters, excluding newlines,
|
|
up to the matching double quote.
|
|
Any single character, including newlines, may be escaped by a backslash.
|
|
.Pp
|
|
The options are as follows:
|
|
.Bl -tag -width Fl
|
|
.It Fl 0
|
|
Use NUL
|
|
(``\e0'')
|
|
instead of whitespace as the argument separator, and do not perform any
|
|
of the quoting described above (all non\-\e0 characters are treated
|
|
equivalently).
|
|
This can be used in conjunction with the
|
|
.Fl print0
|
|
option of
|
|
.Xr find 1 .
|
|
.It Fl n Ar number
|
|
Set the maximum number of arguments taken from standard input for each
|
|
invocation of the utility.
|
|
An invocation of
|
|
.Ar utility
|
|
will use less than
|
|
.Ar number
|
|
standard input arguments if the number of bytes accumulated (see the
|
|
.Fl s
|
|
option) exceeds the specified
|
|
.Ar size
|
|
or there are fewer than
|
|
.Ar number
|
|
arguments remaining for the last invocation of
|
|
.Ar utility .
|
|
The current default value for
|
|
.Ar number
|
|
is 5000.
|
|
.It Fl p
|
|
Prompt mode: immediately before each command execution the user is prompted
|
|
whether to execute the command instance.
|
|
If an affirmative response is read from
|
|
.Pa /dev/tty
|
|
the command will be executed; otherwise this particular invocation will be
|
|
skipped.
|
|
This option implies the
|
|
.Fl t
|
|
option.
|
|
.It Fl s Ar size
|
|
Set the maximum number of bytes for the command line length provided to
|
|
.Ar utility .
|
|
The sum of the length of the utility name and the arguments passed to
|
|
.Ar utility
|
|
(including
|
|
.Dv NULL
|
|
terminators) will be less than or equal to this number.
|
|
The current default value for
|
|
.Ar size
|
|
is
|
|
.Dv ARG_MAX
|
|
- 4096.
|
|
.It Fl t
|
|
Echo the command to be executed to standard error immediately before it
|
|
is executed.
|
|
.It Fl x
|
|
Force
|
|
.Nm
|
|
to terminate immediately if a command line containing
|
|
.Ar number
|
|
arguments will not fit in the specified (or default) command line length.
|
|
.El
|
|
.Pp
|
|
If no
|
|
.Ar utility
|
|
is specified,
|
|
.Xr echo 1
|
|
is used.
|
|
.Pp
|
|
Undefined behavior may occur if
|
|
.Ar utility
|
|
reads from the standard input.
|
|
.Pp
|
|
The
|
|
.Nm
|
|
utility exits immediately (without processing any further input) if a
|
|
command line cannot be assembled,
|
|
.Ar utility
|
|
cannot be invoked, an invocation of the utility is terminated by a signal
|
|
or an invocation of the utility exits with a value of 255.
|
|
.Sh EXIT STATUS
|
|
.Nm
|
|
exits with one of the following values:
|
|
.Bl -tag -width Ds -compact
|
|
.It 0
|
|
All invocations of
|
|
.Ar utility
|
|
returned a zero exit status.
|
|
.It 123
|
|
One or more invocations of
|
|
.Ar utility
|
|
returned a nonzero exit status.
|
|
.It 124
|
|
The
|
|
.Ar utility
|
|
exited with a 255 exit status.
|
|
.It 125
|
|
The
|
|
.Ar utility
|
|
was killed or stopped by a signal.
|
|
.It 126
|
|
The
|
|
.Ar utility
|
|
was found but could not be invoked.
|
|
.It 127
|
|
The
|
|
.Ar utility
|
|
could not be found.
|
|
.It 1
|
|
Some other error occurred.
|
|
.El
|
|
.Sh FILES
|
|
.Bl -tag -width /dev/tty -compact
|
|
.It Pa /dev/tty
|
|
used to read responses in prompt mode
|
|
.El
|
|
.Sh SEE ALSO
|
|
.Xr echo 1 ,
|
|
.Xr find 1
|
|
.Sh STANDARDS
|
|
The
|
|
.Nm
|
|
utility is expected to be
|
|
.St -p1003.2
|
|
compliant.
|
|
.Sh HISTORY
|
|
The
|
|
.Nm xargs
|
|
command appeared in PWB Unix 1.0.
|
|
It made its first BSD appearance in the 4.3 Reno release.
|
|
.Pp
|
|
The meaning of 123, 124, and 125 exit values and the
|
|
.Fl 0
|
|
option were taken from GNU xargs.
|