@node Common options
@chapter Common options
-@macro optBackup
-@item -b
-@itemx --backup[=@var{method}]
-@opindex -b
-@opindex --backup
+@macro optBackup{cmd}
+@optItem{\cmd\,-b}
+@optItemx{\cmd\,--backup,[=@var{method}]}
@vindex VERSION_CONTROL
@cindex backups, making
@xref{Backup options}.
Make a backup of each file that would otherwise be overwritten or removed.
@end macro
-@macro optBackupSuffix
-@item -S @var{suffix}
-@itemx --suffix=@var{suffix}
-@opindex -S
-@opindex --suffix
+@macro optBackupSuffix{cmd}
+@optItem{\cmd\,-S,@w{ }@var{suffix}}
+@optItemx{\cmd\,--suffix,=@var{suffix}}
Append @var{suffix} to each backup file made with @option{-b}.
@xref{Backup options}.
@end macro
-@macro optTargetDirectory
-@item -t @var{directory}
-@itemx --target-directory=@var{directory}
-@opindex -t
-@opindex --target-directory
+@macro optTargetDirectory{cmd}
+@optItem{\cmd\,-t,@w{ }@var{directory}}
+@optItemx{\cmd\,--target-directory,=@var{directory}}
@cindex target directory
@cindex destination directory
Specify the destination @var{directory}.
@xref{Target directory}.
@end macro
-@macro optNoTargetDirectory
-@item -T
-@itemx --no-target-directory
-@opindex -T
-@opindex --no-target-directory
+@macro optNoTargetDirectory{cmd}
+@optItem{\cmd\,-T}
+@optItemx{\cmd\,--no-target-directory}
@cindex target directory
@cindex destination directory
Do not treat the last operand specially when it is a directory or a
output even when that output would contain data with embedded newlines.
@end macro
-@macro optNull
-@item -0
-@itemx --null
-@opindex -0
-@opindex --null
+@macro optNull{cmd}
+@optItem{\cmd\,-0}
+@optItemx{\cmd\,--null}
@outputNUL
@end macro
or other special characters).
@end macro
-@macro optSi
-@item --si
-@opindex --si
+@macro optSi{cmd}
+@optItem{\cmd\,--si}
@cindex SI output
Append an SI-style abbreviation to each size, such as @samp{M} for
megabytes. Powers of 1000 are used, not 1024; @samp{M} stands for
you prefer powers of 1024.
@end macro
-@macro optHumanReadable
-@item -h
-@itemx --human-readable
-@opindex -h
-@opindex --human-readable
+@macro optHumanReadable{cmd}
+@optItem{\cmd\,-h}
+@optItemx{\cmd\,--human-readable}
@cindex human-readable output
Append a size letter to each size, such as @samp{M} for mebibytes.
Powers of 1024 are used, not 1000; @samp{M} stands for 1,048,576 bytes.
Use the @option{--si} option if you prefer powers of 1000.
@end macro
-@macro optStripTrailingSlashes
-@item --strip-trailing-slashes
-@opindex --strip-trailing-slashes
+@macro optStripTrailingSlashes{cmd}
+@optItem{\cmd\,--strip-trailing-slashes}
@cindex stripping trailing slashes
Remove any trailing slashes from each @var{source} argument.
@xref{Trailing slashes}.
@table @samp
-@macro choptH
-@item -H
-@opindex -H
+@macro choptH{cmd}
+@optItem{\cmd\,-H}
@cindex symbolic link to directory, traverse if on the command line
If @option{--recursive} (@option{-R}) is specified and
a command line argument is a symbolic link to a directory, traverse it.
@end macro
@choptH
-@macro choptL
-@item -L
-@opindex -L
+@macro choptL{cmd}
+@optItem{\cmd\,-L}
@cindex symbolic link to directory, traverse each that is encountered
In a recursive traversal, traverse every symbolic link to a directory
that is encountered.
possibly allowing the attacker to escalate privileges.
@end macro
-
@choptL
-@macro choptP
-@item -P
-@opindex -P
+@macro choptP{cmd}
+@optItem{\cmd\,-P}
@cindex symbolic link to directory, never traverse
Do not traverse any symbolic links.
@end macro
@table @samp
-@item -A
-@itemx --show-all
-@opindex -A
-@opindex --show-all
+@optItem{cat,-A}
+@optItemx{cat,--show-all}
Equivalent to @option{-vET}.
-@item -b
-@itemx --number-nonblank
-@opindex -b
-@opindex --number-nonblank
+@optItem{cat,-b}
+@optItemx{cat,--number-nonblank}
Number all nonempty output lines, starting with 1.
-@item -e
-@opindex -e
+@optItem{cat,-e}
Equivalent to @option{-vE}.
-@item -E
-@itemx --show-ends
-@opindex -E
-@opindex --show-ends
+@optItem{cat,-E}
+@optItemx{cat,--show-ends}
Display a @samp{$} after the end of each line.
The @code{\r\n} combination is shown as @samp{^M$}.
-@item -n
-@itemx --number
-@opindex -n
-@opindex --number
+@optItem{cat,-n}
+@optItemx{cat,--number}
Number all output lines, starting with 1. This option is ignored
if @option{-b} is in effect.
-@item -s
-@itemx --squeeze-blank
-@opindex -s
-@opindex --squeeze-blank
+@optItem{cat,-s}
+@optItemx{cat,--squeeze-blank}
@cindex squeezing empty lines
@cindex squeezing blank lines
Suppress repeated adjacent blank lines; output just one empty line
instead of several.
-@item -t
-@opindex -t
+@optItem{cat,-t}
Equivalent to @option{-vT}.
-@item -T
-@itemx --show-tabs
-@opindex -T
-@opindex --show-tabs
+@optItem{cat,-T}
+@optItemx{cat,--show-tabs}
Display TAB characters as @samp{^I}.
-@item -u
-@opindex -u
+@optItem{cat,-u}
Ignored; for POSIX compatibility.
-@item -v
-@itemx --show-nonprinting
-@opindex -v
-@opindex --show-nonprinting
+@optItem{cat,-v}
+@optItemx{cat,--show-nonprinting}
Display control characters except for LFD and TAB using
@samp{^} notation and precede characters that have the high bit set with
@samp{M-}.
@table @samp
-@item -b
-@itemx --before
-@opindex -b
-@opindex --before
+@optItem{tac,-b}
+@optItemx{tac,--before}
The separator is attached to the beginning of the record that it
precedes in the file.
-@item -r
-@itemx --regex
-@opindex -r
-@opindex --regex
+@optItem{tac,-r}
+@optItemx{tac,--regex}
Treat the separator string as a regular expression.
-@item -s @var{separator}
-@itemx --separator=@var{separator}
-@opindex -s
-@opindex --separator
+@optItem{tac,-s,@w{ }@var{separator}}
+@optItemx{tac,--separator,=@var{separator}}
Use @var{separator} as the record separator, instead of newline.
Note an empty @var{separator} is treated as a zero byte.
I.e., input and output items are delimited with ASCII NUL.
@table @samp
-@item -b @var{style}
-@itemx --body-numbering=@var{style}
-@opindex -b
-@opindex --body-numbering
+@optItem{nl,-b,@w{ }@var{style}}
+@optItemx{nl,--body-numbering,=@var{style}}
Select the numbering style for lines in the body section of each
logical page. When a line is not numbered, the current line number
is not incremented, but the line number separator character is still
@xref{Regular Expressions, , Regular Expressions, grep, The GNU Grep Manual}.
@end table
-@item -d @var{cd}
-@itemx --section-delimiter=@var{cd}
-@opindex -d
-@opindex --section-delimiter
+@optItem{nl,-d,@w{ }@var{cd}}
+@optItemx{nl,--section-delimiter,=@var{cd}}
@cindex section delimiters of pages
Set the section delimiter characters to @var{cd}; default is
@samp{\:}. If only @var{c} is given, the second remains @samp{:}.
(Remember to protect @samp{\} or other metacharacters from shell
expansion with quotes or extra backslashes.)
-@item -f @var{style}
-@itemx --footer-numbering=@var{style}
-@opindex -f
-@opindex --footer-numbering
+@optItem{nl,-f,@w{ }@var{style}}
+@optItemx{nl,--footer-numbering,=@var{style}}
Analogous to @option{--body-numbering}.
-@item -h @var{style}
-@itemx --header-numbering=@var{style}
-@opindex -h
-@opindex --header-numbering
+@optItem{nl,-h,@w{ }@var{style}}
+@optItemx{nl,--header-numbering,=@var{style}}
Analogous to @option{--body-numbering}.
-@item -i @var{number}
-@itemx --line-increment=@var{number}
-@opindex -i
-@opindex --line-increment
+@optItem{nl,-i,@w{ }@var{number}}
+@optItemx{nl,--line-increment,=@var{number}}
Increment line numbers by @var{number} (default 1).
@var{number} can be negative to decrement.
-@item -l @var{number}
-@itemx --join-blank-lines=@var{number}
-@opindex -l
-@opindex --join-blank-lines
+@optItem{nl,-l,@w{ }@var{number}}
+@optItemx{nl,--join-blank-lines,=@var{number}}
@cindex empty lines, numbering
@cindex blank lines, numbering
Consider @var{number} (default 1) consecutive empty lines to be one
An empty line is one that contains no characters, not even spaces
or tabs.
-@item -n @var{format}
-@itemx --number-format=@var{format}
-@opindex -n
-@opindex --number-format
+@optItem{nl,-n,@w{ }@var{format}}
+@optItemx{nl,--number-format,=@var{format}}
Select the line numbering format (default is @code{rn}):
@table @samp
right justified, leading zeros.
@end table
-@item -p
-@itemx --no-renumber
-@opindex -p
-@opindex --no-renumber
+@optItem{nl,-p}
+@optItemx{nl,--no-renumber}
Do not reset the line number at the start of a logical page.
-@item -s @var{string}
-@itemx --number-separator=@var{string}
-@opindex -s
-@opindex --number-separator
+@optItem{nl,-s,@w{ }@var{string}}
+@optItemx{nl,--number-separator,=@var{string}}
Separate the line number from the text line in the output with
@var{string} (default is the TAB character).
-@item -v @var{number}
-@itemx --starting-line-number=@var{number}
-@opindex -v
-@opindex --starting-line-number
+@optItem{nl,-v,@w{ }@var{number}}
+@optItemx{nl,--starting-line-number,=@var{number}}
Set the initial line number on each logical page to @var{number} (default 1).
The starting @var{number} can be negative.
-@item -w @var{number}
-@itemx --number-width=@var{number}
-@opindex -w
-@opindex --number-width
+@optItem{nl,-w,@w{ }@var{number}}
+@optItemx{nl,--number-width,=@var{number}}
Use @var{number} characters for line numbers (default 6).
@end table
@table @samp
-@item -A @var{radix}
-@itemx --address-radix=@var{radix}
-@opindex -A
-@opindex --address-radix
+@optItem{od,-A,@w{ }@var{radix}}
+@optItemx{od,--address-radix,=@var{radix}}
@cindex radix for file offsets
@cindex file offset radix
Select the base in which file offsets are printed. @var{radix} can
The default is octal.
-@item --endian=@var{order}
-@opindex --endian
+@optItem{od,--endian,=@var{order}}
@cindex byte-swapping
@cindex endianness
Reorder input bytes, to handle inputs with differing byte orders,
specified @option{--type} size and endian @var{order}, which can be
@samp{little} or @samp{big}.
-@item -j @var{bytes}
-@itemx --skip-bytes=@var{bytes}
-@opindex -j
-@opindex --skip-bytes
+@optItem{od,-j,@w{ }@var{bytes}}
+@optItemx{od,--skip-bytes,=@var{bytes}}
Skip @var{bytes} input bytes before formatting and writing. If
@var{bytes} begins with @samp{0x} or @samp{0X}, it is interpreted in
hexadecimal; otherwise, if it begins with @samp{0}, in octal; otherwise,
in decimal.
@multiplierSuffixes{bytes}
-@item -N @var{bytes}
-@itemx --read-bytes=@var{bytes}
-@opindex -N
-@opindex --read-bytes
+@optItem{od,-N,@w{ }@var{bytes}}
+@optItemx{od,--read-bytes,=@var{bytes}}
Output at most @var{bytes} bytes of the input. Prefixes and suffixes on
@code{bytes} are interpreted as for the @option{-j} option.
-@item -S @var{bytes}
-@itemx --strings[=@var{bytes}]
-@opindex -S
-@opindex --strings
+@optItem{od,-S,@w{ }@var{bytes}}
+@optItemx{od,--strings,=@var{bytes}}
@cindex string constants, outputting
Instead of the normal output, output only @dfn{string constants}: at
least @var{bytes} consecutive printable characters,
If @var{bytes} is omitted with @option{--strings}, the default is 3.
-@item -t @var{type}
-@itemx --format=@var{type}
-@opindex -t
-@opindex --format
+@optItem{od,-t,@w{ }@var{type}}
+@optItemx{od,--format,=@var{type}}
Select the format in which to output the file data. @var{type} is a
string of one or more of the below type indicator characters. If you
include more than one type indicator character in a single @var{type}
long double
@end table
-@item -v
-@itemx --output-duplicates
-@opindex -v
-@opindex --output-duplicates
+@optItem{od,-v}
+@optItemx{od,--output-duplicates}
Output consecutive lines that are identical. By default, when two or
more consecutive output lines would be identical, @command{od} outputs only
the first line, and puts just an asterisk on the following line to
indicate the elision.
-@item -w[@var{n}]
-@itemx --width[=@var{n}]
-@opindex -w
-@opindex --width
+@optItem{od,-w,@w{ }@var{n}}
+@optItemx{od,--width,=@var{n}}
Dump @code{n} input bytes per output line. This must be a multiple of
the least common multiple of the sizes associated with the specified
output types.
@table @samp
-@item -a
-@opindex -a
+@optItem{od,-a}
Output as named characters. Equivalent to @samp{-t a}.
-@item -b
-@opindex -b
+@optItem{od,-b}
Output as octal bytes. Equivalent to @samp{-t o1}.
-@item -c
-@opindex -c
+@optItem{od,-c}
Output as printable single byte characters, C backslash escapes
or 3 digit octal sequences. Equivalent to @samp{-t c}.
-@item -d
-@opindex -d
+@optItem{od,-d}
Output as unsigned decimal two-byte units. Equivalent to @samp{-t u2}.
-@item -f
-@opindex -f
+@optItem{od,-f}
Output as floats. Equivalent to @samp{-t fF}.
-@item -i
-@opindex -i
+@optItem{od,-i}
Output as decimal ints. Equivalent to @samp{-t dI}.
-@item -l
-@opindex -l
+@optItem{od,-l}
Output as decimal long ints. Equivalent to @samp{-t dL}.
-@item -o
-@opindex -o
+@optItem{od,-o}
Output as octal two-byte units. Equivalent to @option{-t o2}.
-@item -s
-@opindex -s
+@optItem{od,-s}
Output as decimal two-byte units. Equivalent to @option{-t d2}.
-@item -x
-@opindex -x
+@optItem{od,-x}
Output as hexadecimal two-byte units. Equivalent to @samp{-t x2}.
-@item --traditional
-@opindex --traditional
+@optItem{od,--traditional}
Recognize the non-option label argument that traditional @command{od}
accepted. The following syntax:
@table @samp
-@item -w @var{cols}
-@itemx --wrap=@var{cols}
-@opindex -w
-@opindex --wrap
+@optAnchor{base32,-w}
+@optAnchor{base32,--wrap}
+@optItem{base64,-w,@w{ }@var{cols}}
+@optItemx{base64,--wrap,=@var{cols}}
@cindex wrap data
@cindex column to wrap data after
During encoding, wrap lines after @var{cols} characters. This must be
The default is to wrap after 76 characters. Use the value 0 to
disable line wrapping altogether.
-@item -d
-@itemx --decode
-@opindex -d
-@opindex --decode
+@optAnchor{base32,-d}
+@optAnchor{base32,--decode}
+@optItem{base64,-d}
+@optItemx{base64,--decode}
@cindex Decode base64 data
@cindex Base64 decoding
Change the mode of operation, from the default of encoding data, to
decoding data. Input is expected to be base64 encoded data, and the
output will be the original data.
-@item -i
-@itemx --ignore-garbage
-@opindex -i
-@opindex --ignore-garbage
+@optAnchor{base32,-i}
+@optAnchor{base32,--ignore-garbage}
+@optItem{base64,-i}
+@optItemx{base64,--ignore-garbage}
@cindex Ignore garbage in base64 stream
When decoding, newlines are always accepted.
During decoding, ignore unrecognized bytes,
@table @samp
-@item --base64
-@opindex --base64
+@optItem{basenc,--base64}
Encode into (or decode from with @option{-d/--decode}) base64 form.
The format conforms to
@uref{https://datatracker.ietf.org/doc/html/rfc4648#section-4, RFC 4648#4}.
Equivalent to the @command{base64} command.
-@item --base64url
-@opindex --base64url
+@optItem{basenc,--base64url}
Encode into (or decode from with @option{-d/--decode}) file-and-url-safe
base64 form (using @samp{_} and @samp{-} instead of @samp{+} and @samp{/}).
The format conforms to
@uref{https://datatracker.ietf.org/doc/html/rfc4648#section-5, RFC 4648#5}.
-@item --base58
-@opindex --base58
+@optItem{basenc,--base58}
Encode into (or decode from with @option{-d/--decode}) base58 form.
The format conforms to
@uref{https://datatracker.ietf.org/doc/html/draft-msporny-base58-03,
uuidgen | basenc --base16 -di | basenc --base58
@end example
-@item --base32
-@opindex --base32
+@optItem{basenc,--base32}
Encode into (or decode from with @option{-d/--decode}) base32 form.
The encoded data uses the @samp{ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=} characters.
The format conforms to
@uref{https://datatracker.ietf.org/doc/html/rfc4648#section-6, RFC 4648#6}.
Equivalent to the @command{base32} command.
-@item --base32hex
-@opindex --base32hex
+@optItem{basenc,--base32hex}
Encode into (or decode from with @option{-d/--decode}) Extended Hex Alphabet
base32 form. The encoded data uses the
@samp{0123456789ABCDEFGHIJKLMNOPQRSTUV=} characters. The format conforms to
@uref{https://datatracker.ietf.org/doc/html/rfc4648#section-7, RFC 4648#7}.
-@item --base16
-@opindex --base16
+@optItem{basenc,--base16}
Encode into (or decode from with @option{-d/--decode}) base16 (hexadecimal)
form. The encoded data uses the @samp{0123456789ABCDEF} characters. The format
conforms to
@uref{https://datatracker.ietf.org/doc/html/rfc4648#section-8, RFC 4648#8}.
-@item --base2lsbf
-@opindex --base2lsbf
+@optItem{basenc,--base2lsbf}
Encode into (or decode from with @option{-d/--decode}) binary string form
(@samp{0} and @samp{1}) with the @emph{least} significant bit of every byte
first.
-@item --base2msbf
-@opindex --base2msbf
+@optItem{basenc,--base2msbf}
Encode into (or decode from with @option{-d/--decode}) binary string form
(@samp{0} and @samp{1}) with the @emph{most} significant bit of every byte
first.
-@item --z85
-@opindex --z85
+@optItem{basenc,--z85}
Encode into (or decode from with @option{-d/--decode}) Z85 form
(a modified Ascii85 form). The encoded data uses the
@samp{0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTU@
@table @samp
-@item -c
-@itemx --crown-margin
-@opindex -c
-@opindex --crown-margin
+@optItem{fmt,-c}
+@optItemx{fmt,--crown-margin}
@cindex crown margin
@dfn{Crown margin} mode: preserve the indentation of the first two
lines within a paragraph, and align the left margin of each subsequent
line with that of the second line.
-@item -t
-@itemx --tagged-paragraph
-@opindex -t
-@opindex --tagged-paragraph
+@optItem{fmt,-t}
+@optItemx{fmt,--tagged-paragraph}
@cindex tagged paragraphs
@dfn{Tagged paragraph} mode: like crown margin mode, except that if
indentation of the first line of a paragraph is the same as the
indentation of the second, the first line is treated as a one-line
paragraph.
-@item -s
-@itemx --split-only
-@opindex -s
-@opindex --split-only
+@optItem{fmt,-s}
+@optItemx{fmt,--split-only}
Split lines only. Do not join short lines to form longer ones. This
prevents sample lines of code, and other such ``formatted'' text from
being unduly combined.
-@item -u
-@itemx --uniform-spacing
-@opindex -u
-@opindex --uniform-spacing
+@optItem{fmt,-u}
+@optItemx{fmt,--uniform-spacing}
Uniform spacing. Reduce spacing between words to one space, and spacing
between sentences to two spaces.
-@item -@var{width}
-@itemx -w @var{width}
-@itemx --width=@var{width}
-@opindex -@var{width}
-@opindex -w
-@opindex --width
+@optItem{fmt,-@var{width}}
+@optItemx{fmt,-w,@w{ }@var{width}}
+@optItemx{fmt,--width,=@var{width}}
Fill output lines up to @var{width} characters (default 75 or @var{goal}
plus 10, if @var{goal} is provided).
-@item -g @var{goal}
-@itemx --goal=@var{goal}
-@opindex -g
-@opindex --goal
+@optItem{fmt,-g,@w{ }@var{goal}}
+@optItemx{fmt,--goal,=@var{goal}}
@command{fmt} initially tries to make lines @var{goal} characters wide.
By default, this is 7% shorter than @var{width}.
-@item -p @var{prefix}
-@itemx --prefix=@var{prefix}
+@optItem{fmt,-p,@w{ }@var{prefix}}
+@optItemx{fmt,--prefix,=@var{prefix}}
Only lines beginning with @var{prefix} (possibly preceded by whitespace)
are subject to formatting. The prefix and any preceding whitespace are
stripped for the formatting and then re-attached to each formatted output
@table @samp
+@optAnchor{pr,--pages}
@item +@var{first_page}[:@var{last_page}]
@itemx --pages=@var{first_page}[:@var{last_page}]
@c The two following @opindex lines evoke warnings because they contain ':'
file (not first page printed). Line numbering may be altered by @option{-N}
option.
-@item -@var{column}
-@itemx --columns=@var{column}
-@opindex -@var{column}
-@opindex --columns
+@optItem{pr,-@var{column}}
+@optItemx{pr,--columns,=@var{column}}
@cindex down columns
With each single @var{file}, produce @var{column} columns of output
(default is 1) and print columns down, unless @option{-a} is used. The
option may set field separators. @option{-@var{column}} may not be used
with the @option{-m} option.
-@item -a
-@itemx --across
-@opindex -a
-@opindex --across
+@optItem{pr,-a}
+@optItemx{pr,--across}
@cindex across columns
With each single @var{file}, print columns across rather than down. The
@option{-@var{column}} option must be given with @var{column} greater than one.
If a line is too long to fit in a column, it is truncated.
-@item -c
-@itemx --show-control-chars
-@opindex -c
-@opindex --show-control-chars
+@optItem{pr,-c}
+@optItemx{pr,--show-control-chars}
Print control characters using hat notation (e.g., @samp{^G}); print
other nonprinting characters in octal backslash notation. By default,
nonprinting characters are not changed.
-@item -d
-@itemx --double-space
-@opindex -d
-@opindex --double-space
+@optItem{pr,-d}
+@optItemx{pr,--double-space}
@cindex double spacing
Double space the output.
-@item -D @var{format}
-@itemx --date-format=@var{format}
+@optItem{pr,-D,@w{ }@var{format}}
+@optItemx{pr,--date-format,=@var{format}}
@cindex time formats
@cindex formatting times
Format header dates using @var{format}, using the same conventions as
@env{TZ} is not set. @xref{TZ Variable,, Specifying the Time Zone
with @env{TZ}, libc, The GNU C Library Reference Manual}.
-@item -e[@var{in-tabchar}[@var{in-tabwidth}]]
-@itemx --expand-tabs[=@var{in-tabchar}[@var{in-tabwidth}]]
-@opindex -e
-@opindex --expand-tabs
+@optItem{pr,-e,[@var{in-tabchar}[@var{in-tabwidth}]]}
+@optItemx{pr,--expand-tabs,[=@var{in-tabchar}[@var{in-tabwidth}]]}
@cindex input tabs
Expand @var{tab}s to spaces on input. Optional argument @var{in-tabchar} is
the input tab character (default is the TAB character). Second optional
argument @var{in-tabwidth} is the input tab character's width (default
is 8).
-@item -f
-@itemx -F
-@itemx --form-feed
-@opindex -F
-@opindex -f
-@opindex --form-feed
+@optItem{pr,-f}
+@optItemx{pr,-F}
+@optItemx{pr,--form-feed}
Use a form feed instead of newlines to separate output pages. This does
not alter the default page length of 66 lines.
-@item -h @var{header}
-@itemx --header=@var{header}
-@opindex -h
-@opindex --header
+@optItem{pr,-h,@w{ }@var{header}}
+@optItemx{pr,--header,=@var{header}}
Replace the file name in the header with the centered string @var{header}.
When using the shell, @var{header} should be quoted and should be
separated from @option{-h} by a space.
-@item -i[@var{out-tabchar}[@var{out-tabwidth}]]
-@itemx --output-tabs[=@var{out-tabchar}[@var{out-tabwidth}]]
-@opindex -i
-@opindex --output-tabs
+@optItem{pr,-i,@w{ }[@var{out-tabchar}[@var{out-tabwidth}]]}
+@optItemx{pr,--output-tabs,=[@var{out-tabchar}[@var{out-tabwidth}]]}
@cindex output tabs
Replace spaces with @var{tab}s on output. Optional argument @var{out-tabchar}
is the output tab character (default is the TAB character). Second optional
argument @var{out-tabwidth} is the output tab character's width (default
is 8).
-@item -J
-@itemx --join-lines
-@opindex -J
-@opindex --join-lines
+@optItem{pr,-J}
+@optItemx{pr,--join-lines}
Merge lines of full length. Used together with the column options
@option{-@var{column}}, @option{-a -@var{column}} or @option{-m}. Turns off
@option{-W/-w} line truncation;
@option{-s} along with the three column options.
-@item -l @var{page_length}
-@itemx --length=@var{page_length}
-@opindex -l
-@opindex --length
+@optItem{pr,-l,@w{ }@var{page_length}}
+@optItemx{pr,--length,=@var{page_length}}
Set the page length to @var{page_length} (default 66) lines, including
the lines of the header [and the footer]. If @var{page_length} is less
than or equal to 10, the header and footer are omitted, as if the
@option{-t} option had been given.
-@item -m
-@itemx --merge
-@opindex -m
-@opindex --merge
+@optItem{pr,-m}
+@optItemx{pr,--merge}
Merge and print all @var{file}s in parallel, one in each column. If a
line is too long to fit in a column, it is truncated, unless the @option{-J}
option is used. @option{--sep-string[=@var{string}]} may be used.
may be used with the @option{-h} or @option{--header} option to fill up
the middle blank part.
-@item -n[@var{number-separator}[@var{digits}]]
-@itemx --number-lines[=@var{number-separator}[@var{digits}]]
-@opindex -n
-@opindex --number-lines
+@optItem{pr,-n,[@var{number-separator}[@var{digits}]]}
+@optItemx{pr,--number-lines,[=@var{number-separator}[@var{digits}]]}
Provide @var{digits} digit line numbering (default for @var{digits} is
5). With multicolumn output the number occupies the first @var{digits}
column positions of each text column or only each line of @option{-m}
@var{number-separator} TAB@. The tabification depends upon the output
position.
-@item -N @var{line_number}
-@itemx --first-line-number=@var{line_number}
-@opindex -N
-@opindex --first-line-number
+@optItem{pr,-N,@w{ }@var{line_number}}
+@optItemx{pr,--first-line-number,=@var{line_number}}
Start line counting with the number @var{line_number} at first line of
first page printed (in most cases not the first line of the input file).
-@item -o @var{margin}
-@itemx --indent=@var{margin}
-@opindex -o
-@opindex --indent
+@optItem{pr,-o,@w{ }@var{margin}}
+@optItemx{pr,--indent,=@var{margin}}
@cindex indenting lines
@cindex left margin
Indent each line with a margin @var{margin} spaces wide (default is zero).
set with the @option{-W/-w} option. A limited overflow may occur with
numbered single column output (compare @option{-n} option).
-@item -r
-@itemx --no-file-warnings
-@opindex -r
-@opindex --no-file-warnings
+@optItem{pr,-r}
+@optItemx{pr,--no-file-warnings}
Do not print a warning message when an argument @var{file} cannot be
opened. (The exit status will still be nonzero, however.)
-@item -s[@var{char}]
-@itemx --separator[=@var{char}]
-@opindex -s
-@opindex --separator
+@optItem{pr,-s,@w{ }@var{char}}
+@optItemx{pr,--separator,=@var{char}}
Separate columns by a single character @var{char}. The default for
@var{char} is the TAB character without @option{-w} and @samp{no
character} with @option{-w}. Without @option{-s} the default separator
three column options (@option{-COLUMN}|@option{-a -COLUMN}|@option{-m}) unless
@option{-w} is set. This is a POSIX-compliant formulation.
-
-@item -S[@var{string}]
-@itemx --sep-string[=@var{string}]
-@opindex -S
-@opindex --sep-string
+@optItem{pr,-S,[@var{string}]}
+@optItemx{pr,--sep-string,[=@var{string}]}
Use @var{string} to separate output columns. The @option{-S} option doesn't
affect the @option{-W/-w} option, unlike the @option{-s} option which does. It
does not affect line truncation or column alignment.
(same as @option{-S"@w{ }"}).
If no @samp{@var{string}} argument is specified, @samp{""} is assumed.
-@item -t
-@itemx --omit-header
-@opindex -t
-@opindex --omit-header
+@optItem{pr,-t}
+@optItemx{pr,--omit-header}
Do not print the usual header [and footer] on each page, and do not fill
out the bottom of pages (with blank lines or a form feed). No page
structure is produced, but form feeds set in the input files are retained.
in the input file to 4 spaces but don't make any other changes. Use of
@option{-t} overrides @option{-h}.
-@item -T
-@itemx --omit-pagination
-@opindex -T
-@opindex --omit-pagination
+@optItem{pr,-T}
+@optItemx{pr,--omit-pagination}
Do not print header [and footer]. In addition eliminate all form feeds
set in the input files.
-@item -v
-@itemx --show-nonprinting
-@opindex -v
-@opindex --show-nonprinting
+@optItem{pr,-v}
+@optItemx{pr,--show-nonprinting}
Print nonprinting characters in octal backslash notation.
-@item -w @var{page_width}
-@itemx --width=@var{page_width}
-@opindex -w
-@opindex --width
+@optItem{pr,-w,@w{ }@var{page_width}}
+@optItemx{pr,--width,=@var{page_width}}
Set page width to @var{page_width} characters for multiple text-column
output only (default for @var{page_width} is 72). The specified
@var{page_width} is rounded down so that columns have equal width.
set. No @var{page_width} setting is possible with single column output.
A POSIX-compliant formulation.
-@item -W @var{page_width}
-@itemx --page_width=@var{page_width}
-@opindex -W
-@opindex --page_width
+@optItem{pr,-W,@w{ }@var{page_width}}
+@optItemx{pr,--page-width,=@var{page_width}}
Set the page width to @var{page_width} characters, honored with and
without a column option. With a column option, the specified @var{page_width}
is rounded down so that columns have equal width. Text lines are truncated,
@table @samp
-@item -b
-@itemx --bytes
-@opindex -b
-@opindex --bytes
+@optItem{fold,-b}
+@optItemx{fold,--bytes}
Count bytes rather than columns, so that tabs, backspaces, and carriage
returns are each counted as taking up one column, just like other
characters.
-@item -c
-@itemx --characters
-@opindex -c
-@opindex --characters
+@optItem{fold,-c}
+@optItemx{fold,--characters}
Count characters rather than columns, meaning that lines containing
characters wider than one column will be visually longer.
-@item -s
-@itemx --spaces
-@opindex -s
-@opindex --spaces
+@optItem{fold,-s}
+@optItemx{fold,--spaces}
Break at word boundaries: the line is broken after the last blank before
the maximum line length. If the line contains no such blanks, the line
is broken at the maximum line length as usual.
-@item -w @var{width}
-@itemx --width=@var{width}
-@opindex -w
-@opindex --width
+@optItem{fold,-w,@w{ }@var{width}}
+@optItemx{fold,--width,@var{width}}
Use a maximum line length of @var{width} columns instead of 80.
For compatibility @command{fold} supports an obsolete option syntax
@table @samp
-@item -c [-]@var{num}
-@itemx --bytes=[-]@var{num}
-@opindex -c
-@opindex --bytes
+@optItem{head,-c,@w{ }[-]@var{num}}
+@optItemx{head,--bytes,=[-]@var{num}}
Print the first @var{num} bytes, instead of initial lines.
However, if @var{num} is prefixed with a @samp{-},
print all but the last @var{num} bytes of each file.
@multiplierSuffixes{num}
-@item -n [-]@var{num}
-@itemx --lines=[-]@var{num}
-@opindex -n
-@opindex --lines
+@optItem{head,-n,@w{ }[-]@var{num}}
+@optItemx{head,--lines,=[-]@var{num}}
Output the first @var{num} lines.
However, if @var{num} is prefixed with a @samp{-},
print all but the last @var{num} lines of each file.
Size multiplier suffixes are the same as with the @option{-c} option.
-@item -q
-@itemx --quiet
-@itemx --silent
-@opindex -q
-@opindex --quiet
-@opindex --silent
+@optItem{head,-q}
+@optItemx{head,--quiet}
+@optItemx{head,--silent}
Never print file name headers.
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{head,-v}
+@optItemx{head,--verbose}
Always print file name headers.
-@optZeroTerminated
+@optZeroTerminated{head}
@end table
@table @samp
-@item -c [+]@var{num}
-@itemx --bytes=[+]@var{num}
-@opindex -c
-@opindex --bytes
+@optItem{tail,-c,@w{ }[+]@var{num}}
+@optItemx{tail,--bytes,=[+]@var{num}}
Output the last @var{num} bytes, instead of final lines.
If @var{num} is prefixed with a @samp{+}, start printing with
byte @var{num} from the start of each file. For example to skip the first byte
use @code{tail -c +2}, while to skip all but the last byte use @code{tail -c 1}.
@multiplierSuffixes{num}
-@item --debug
-@opindex --debug
+@optItem{tail,--debug}
Output extra information to standard error,
like the --follow implementation being used.
-@item -f
-@itemx --follow[=@var{how}]
-@opindex -f
-@opindex --follow
+@optItem{tail,-f}
+@optItemx{tail,--follow,[=@var{how}]}
@cindex growing files
@vindex name @r{follow option}
@vindex descriptor @r{follow option}
alias tail='tail -s.1'
@end example
-@item -F
-@opindex -F
+@optItem{tail,-F}
This option is the same as @option{--follow=name --retry}. That is, tail
will attempt to reopen a file when it is removed. Should this fail, tail
will keep trying until it becomes accessible again.
-@item --max-unchanged-stats=@var{n}
-@opindex --max-unchanged-stats
+@optItem{tail,--max-unchanged-stats,=@var{n}}
When tailing a file by name, if there have been @var{n} (default
n=@value{DEFAULT_MAX_N_UNCHANGED_STATS_BETWEEN_OPENS}) consecutive
iterations for which the file has not changed, then
This option is meaningful only when polling (i.e., without inotify)
and when following by name.
-@item -n [+]@var{num}
-@itemx --lines=[+]@var{}
-@opindex -n
-@opindex --lines
+@optItem{tail,-n,@w{ }[+]@var{num}}
+@optItemx{tail,--lines,=[+]@var{num}}
Output the last @var{num} lines.
If @var{num} is prefixed with a @samp{+}, start printing with
line @var{num} from the start of each file. For example to skip the first line
use @code{tail -n +2}, while to skip all but the last line use @code{tail -n 1}.
Size multiplier suffixes are the same as with the @option{-c} option.
-@item --pid=@var{pid}
-@opindex --pid
+@optItem{tail,--pid,=@var{pid}}
When following by name or by descriptor, you may specify the process ID,
@var{pid}, of one or more (by repeating @option{--pid}) writers of the
@var{file} arguments. Then, @command{tail} will exit shortly
On some systems, @option{--pid} is not supported and @command{tail}
outputs a warning.
-@item -q
-@itemx --quiet
-@itemx --silent
-@opindex -q
-@opindex --quiet
-@opindex --silent
+@optItem{tail,-q}
+@optItemx{tail,--quiet}
+@optItemx{tail,--silent}
Never print file name headers.
-@item --retry
-@opindex --retry
+@optItem{tail,--retry}
Indefinitely try to open the specified file.
This option is useful mainly when following (and otherwise issues a warning).
exist or is otherwise inaccessible, it reports that fact and
never checks it again.
-@item -s @var{number}
-@itemx --sleep-interval=@var{number}
-@opindex -s
-@opindex --sleep-interval
+@optItem{tail,-s,@w{ }@var{number}}
+@optItemx{tail,--sleep-interval,=@var{number}}
Change the number of seconds to wait between iterations (the default is 1.0).
During one iteration, every specified file is checked to see if it has
changed size.
The @var{number} must be non-negative and can be a floating-point number
in either the current or the C locale. @xref{Floating point}.
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{tail,-v}
+@optItemx{tail,--verbose}
Always print file name headers.
-@optZeroTerminated
+@optZeroTerminated{tail}
@end table
@table @samp
-@item -l @var{lines}
-@itemx --lines=@var{lines}
-@opindex -l
-@opindex --lines
+@optItem{split,-l,@w{ }@var{lines}}
+@optItemx{split,--lines,=@var{lines}}
Put @var{lines} lines of @var{input} into each output file.
If @option{--separator} is specified, then @var{lines} determines
the number of records.
option syntax @option{-@var{lines}}. New scripts should use
@option{-l @var{lines}} instead.
-@item -b @var{size}
-@itemx --bytes=@var{size}
-@opindex -b
-@opindex --bytes
+@optItem{split,-b,@w{ }@var{size}}
+@optItemx{split,--bytes,=@var{size}}
Put @var{size} bytes of @var{input} into each output file.
@multiplierSuffixes{size}
-@item -C @var{size}
-@itemx --line-bytes=@var{size}
-@opindex -C
-@opindex --line-bytes
+@optItem{split,-C,@w{ }@var{size}}
+@optItemx{split,--lines-bytes,=@var{size}}
Put into each output file as many complete lines of @var{input} as
possible without exceeding @var{size} bytes. Individual lines or records
longer than @var{size} bytes are broken into multiple files.
If @option{--separator} is specified, then @var{lines} determines
the number of records.
-@item --filter=@var{command}
-@opindex --filter
+@optItem{split,--filter,=@var{command}}
With this option, rather than simply writing to each output file,
write through a pipe to the specified shell @var{command} for each output file.
@var{command} should use the $FILE environment variable, which is set
Assuming a 10:1 compression ratio, that would create about fifty 20GiB files
with names @file{big-aa.xz}, @file{big-ab.xz}, @file{big-ac.xz}, etc.
-@item -n @var{chunks}
-@itemx --number=@var{chunks}
-@opindex -n
-@opindex --number
-
+@optItem{split,-n,@w{ }@var{chunks}}
+@optItemx{split,--number,=@var{chunks}}
Split @var{input} to @var{chunks} output files where @var{chunks} may be:
@macro Stdout
because the size of the input is irrelevant. For other modes, such an
input is first copied to a temporary to determine its size.
-@item -a @var{length}
-@itemx --suffix-length=@var{length}
-@opindex -a
-@opindex --suffix-length
+@optItem{split,-a,@w{ }@var{length}}
+@optItemx{split,--suffix-length,=@var{length}}
Use suffixes of length @var{length}. If a @var{length} of 0 is specified,
this is the same as if (any previous) @option{-a} was not specified, and
thus enables the default behavior, which starts the suffix length at 2,
and unless @option{-n} or @option{--numeric-suffixes=@var{from}} is
specified, will auto increase the length by 2 as required.
-@item -d
-@itemx --numeric-suffixes[=@var{from}]
-@opindex -d
-@opindex --numeric-suffixes
+@optItem{split,-d}
+@optItemx{split,--numeric-suffixes,[=@var{from}]}
Use digits in suffixes rather than lower-case letters. The numerical
suffix counts from @var{from} if specified, 0 otherwise.
the number of files is less than @var{from}, a single run is assumed and the
minimum suffix length required is automatically determined.
-@item -x
-@itemx --hex-suffixes[=@var{from}]
-@opindex -x
-@opindex --hex-suffixes
+@optItem{split,-x}
+@optItemx{split,--hex-suffixes,[=@var{from}]}
Like @option{--numeric-suffixes}, but use hexadecimal numbers (in lower case).
-@item --additional-suffix=@var{suffix}
-@opindex --additional-suffix
+@optItem{split,--additional-suffix,=@var{suffix}}
Append an additional @var{suffix} to output file names. @var{suffix}
must not contain slash.
-@item -e
-@itemx --elide-empty-files
-@opindex -e
-@opindex --elide-empty-files
+@optItem{split,-e}
+@optItemx{split,--elide-empty-files}
Suppress the generation of zero-length output files. This can happen
with the @option{--number} option if a file is (truncated to be) shorter
than the number requested, or if a line is so long as to completely
span a chunk. The output file sequence numbers, always run consecutively
even when this option is specified.
-@item -t @var{separator}
-@itemx --separator=@var{separator}
-@opindex -t
-@opindex --separator
+@optItem{split,-t,@w{ }@var{separator}}
+@optItemx{split,--separator,=@var{separator}}
@cindex line separator character
@cindex record separator character
Use character @var{separator} as the record separator instead of the default
To specify ASCII NUL as the separator, use the two-character string @samp{\0},
e.g., @samp{split -t '\0'}.
-@item -u
-@itemx --unbuffered
-@opindex -u
-@opindex --unbuffered
+@optItem{split,-u}
+@optItemx{split,--unbuffered}
Immediately copy input to output in @option{--number r/@dots{}} mode,
which is a much slower mode of operation.
-@item --verbose
-@opindex --verbose
+@optItem{split,--verbose}
Write a diagnostic just before each output file is opened.
@end table
@table @samp
-@item -f @var{prefix}
-@itemx --prefix=@var{prefix}
-@opindex -f
-@opindex --prefix
+@optItem{csplit,-f,@w{ }@var{prefix}}
+@optItemx{csplit,--prefix,=@var{prefix}}
@cindex output file name prefix
Use @var{prefix} as the output file name prefix.
-@item -b @var{format}
-@itemx --suffix-format=@var{format}
-@opindex -b
-@opindex --suffix-format
+@optItem{csplit,-b,@w{ }@var{format}}
+@optItemx{csplit,--suffix-format,=@var{format}}
@cindex output file name suffix
Use @var{format} as the output file name suffix. When this option is
specified, the suffix string must include exactly one
individual output files in turn. If this option is used, the
@option{--digits} option is ignored.
-@item -n @var{digits}
-@itemx --digits=@var{digits}
-@opindex -n
-@opindex --digits
+@optItem{csplit,-n,@w{ }@var{digits}}
+@optItemx{csplit,--digits,=@var{digits}}
Use output file names containing numbers that are @var{digits} digits
long instead of the default 2.
-@item -k
-@itemx --keep-files
-@opindex -k
-@opindex --keep-files
+@optItem{csplit,-k}
+@optItemx{csplit,--keep-files}
Do not remove output files when errors are encountered.
-@item --suppress-matched
-@opindex --suppress-matched
+@optItem{csplit,--suppress-matched}
Do not output lines matching the specified @var{pattern}.
I.e., suppress the boundary line from the start of the second
and subsequent splits.
-@item -z
-@itemx --elide-empty-files
-@opindex -z
-@opindex --elide-empty-files
+@optItem{csplit,-z}
+@optItemx{csplit,--elide-empty-files}
Suppress the generation of zero-length output files. (In cases where
the section delimiters of the input file are supposed to mark the first
lines of each of the sections, the first output file will generally be a
numbers always run consecutively starting from 0, even when this option
is specified.
-@item -s
-@itemx -q
-@itemx --silent
-@itemx --quiet
-@opindex -s
-@opindex -q
-@opindex --silent
-@opindex --quiet
+@optItem{csplit,-s}
+@optItemx{csplit,-q}
+@optItemx{csplit,--silent}
+@optItemx{csplit,--quiet}
Do not print counts of output file sizes.
@end table
@table @samp
-@item -c
-@itemx --bytes
-@opindex -c
-@opindex --bytes
+@optItem{wc,-c}
+@optItemx{wc,--bytes}
Print only the byte counts.
-@item -m
-@itemx --chars
-@opindex -m
-@opindex --chars
+@optItem{wc,-m}
+@optItemx{wc,--chars}
Print only the character counts, as per the current locale.
Encoding errors are not counted.
-@item -w
-@itemx --words
-@opindex -w
-@opindex --words
+@optItem{wc,-w}
+@optItemx{wc,--words}
Print only the word counts. A word is a nonempty sequence of non white
space delimited by white space characters or by start or end of input.
The current locale determines which characters are white space.
U+2007 FIGURE SPACE, U+202F NARROW NO-BREAK SPACE, and U+2060 WORD
JOINER.
-@item -l
-@itemx --lines
-@opindex -l
-@opindex --lines
+@optItem{wc,-l}
+@optItemx{wc,--lines}
Print only the newline character counts.
If a file ends in a non-newline character,
its trailing partial line is not counted.
-@item --debug
-@opindex --debug
+@optItem{wc,--debug}
Output extra information to standard error.
Currently; print the line count acceleration implementation being used.
-@item -L
-@itemx --max-line-length
-@opindex -L
-@opindex --max-line-length
+@optItem{wc,-L}
+@optItemx{wc,--max-line-length}
Print only the maximum display widths.
Tabs are set at every 8th column.
Display widths of wide characters are considered.
Non-printable characters are given 0 width.
-@item --total=@var{when}
-@opindex --total=@var{when}
+@optItem{wc,--total}
Control when and how the final line with cumulative counts is printed.
@var{when} is one of:
@itemize @bullet
@end itemize
@macro filesZeroFromOption{cmd,withTotalOption,subListOutput}
-@item --files0-from=@var{file}
-@opindex --files0-from=@var{file}
+@optItem{\cmd\,--files0-from,=@var{file}}
@c This is commented out to avoid a texi2dvi failure.
@c texi2dvi (GNU Texinfo 4.11) 1.104
@c @cindex including files from @command{\cmd\}
@table @samp
-@item -r
-@opindex -r
+@optItem{sum,-r}
@cindex BSD @command{sum}
Use the default (BSD compatible) algorithm. This option is included for
compatibility with the System V @command{sum}. Unless @option{-s} was also
given, it has no effect.
-@item -s
-@itemx --sysv
-@opindex -s
-@opindex --sysv
+@optItem{sum,-s}
+@optItemx{sum,--sysv}
@cindex System V @command{sum}
Compute checksums using an algorithm compatible with System V
@command{sum}'s default, and print file sizes in units of 512-byte blocks.
@table @samp
-@item -a
-@itemx --algorithm
-@opindex -a
-@opindex --algorithm
+@optItem{cksum,-a,@w{ }@var{type}}
+@optItemx{cksum,--algorithm,=@var{type}}
@cindex digest algorithm
Compute checksums using the specified digest algorithm.
@samp{blake2b} equivalent to @command{b2sum}
@end example
-@item --base64
-@opindex --base64
+@optItem{cksum,--base64}
@cindex base64 checksum encoding
Print base64-encoded digests not hexadecimal.
This option is ignored with @option{--check}.
input digest string as what is output. I.e., removing or adding any
@samp{=} padding renders a digest non-matching.
-@item --debug
-@opindex --debug
+@optItem{cksum,--debug}
Output extra information to standard error,
like the checksum implementation being used.
-@item -l
-@itemx --length
-@opindex -l
-@opindex --length
+@optItem{cksum,-l,@w{ }@var{bits}}
+@optItemx{cksum,--length,=@var{bits}}
@cindex BLAKE2 hash length
+@cindex SHA-2 hash length
@cindex SHA-3 hash length
Specify the digest size used with @option{-a sha2, sha3, or blake2b}.
For @samp{blake2b} this is optional, with 512 being the default. If the
This option is ignored when @option{--check} is specified,
as the length is automatically determined when checking.
-@item --raw
-@opindex --raw
+@optItem{cksum,--raw}
@cindex raw binary checksum
Print only the unencoded raw binary digest for a single input.
Do not output the file name or anything else.
Unlike other output formats, @command{cksum} provides no way to
@option{--check} a @option{--raw} checksum.
-@item --untagged
-@opindex --untagged
+@optItem{cksum,--untagged}
Output using the original Coreutils format used by the other
standalone checksum utilities like @command{md5sum} for example.
This format has the checksum at the start of the line, and may be
@table @samp
-@item -b
-@itemx --binary
-@opindex -b
-@opindex --binary
+@optItem{cksum,-b}
+@optItemx{cksum,--binary}
@cindex binary input files
Treat each input file as binary, by reading it in binary mode and
outputting a @samp{*} flag. This is the inverse of @option{--text}.
@end macro
@cksumTextMode
-@item -c
-@itemx --check
+@optItem{cksum,-c}
+@optItemx{cksum,--check}
Read file names and checksum information (not data) from each
@var{file} (or from standard input if no @var{file} was specified) and report
whether the checksums match the contents of the named files.
line is found, @command{cksum} exits with nonzero status. Otherwise,
it exits successfully.
-@item --ignore-missing
-@opindex --ignore-missing
+@optItem{cksum,--ignore-missing}
@cindex verifying checksums
This option is useful only when verifying checksums.
When verifying checksums, don't fail or report any status
for missing files. This is useful when verifying a subset
of downloaded files given a larger list of checksums.
-@item --quiet
-@opindex --quiet
+@optItem{cksum,--quiet}
@cindex verifying checksums
This option is useful only when verifying checksums.
When verifying checksums, don't generate an 'OK' message per successfully
default one-line-per-file format. If there is any checksum mismatch,
print a warning summarizing the failures to standard error.
-@item --status
-@opindex --status
+@optItem{cksum,--status}
@cindex verifying checksums
This option is useful only when verifying checksums.
When verifying checksums, don't generate the default one-line-per-file
checksums, exit successfully. Otherwise exit with a status code
indicating there was a failure.
-@item --tag
-@opindex --tag
+@optItem{cksum,--tag}
@cindex BSD output
Output BSD style checksums, which indicate the checksum algorithm used.
As a GNU extension, if @option{--zero} is not used, file names with problematic
@xref{cksum output modes} for details of this format.
The @command{cksum} command, uses @option{--tag} as its default output format.
-@item -t
-@itemx --text
-@opindex -t
-@opindex --text
+@optItem{cksum,-t}
+@optItemx{cksum,--text}
@cindex text input files
Treat each input file as text, by reading it in text mode and
outputting a @samp{ } flag. This is the inverse of @option{--binary}.
terminal. This mode is never defaulted to if @option{--tag} is used.
@cksumTextMode
-@item -w
-@itemx --warn
-@opindex -w
-@opindex --warn
+@optItem{cksum,-w}
+@optItemx{cksum,--warn}
@cindex verifying checksums
When verifying checksums, warn about improperly formatted checksum lines.
This option is useful only if all but a few lines in the checked input
are valid.
-@item --strict
-@opindex --strict
+@optItem{cksum,--strict}
@cindex verifying checksums
When verifying checksums,
if one or more input line is invalid,
exit nonzero after all warnings have been issued.
-@optZero
+@optZero{cksum}
Also file name escaping is not used.
@end table
@table @samp
-@item -l
-@itemx --length
-@opindex -l
-@opindex --length
+@optItem{b2sum,-l,@w{ }@var{bits}}
+@optItemx{b2sum,--length,=@var{bits}}
@cindex BLAKE2 hash length
Specify the digest size used by the algorithm. This option is optional.
By default a 512 bit digest will be used. If the option is given it
@table @samp
-@item -c
-@itemx --check
+@optItem{sort,-c}
+@optItemx{sort,--check}
@itemx --check=diagnose-first
-@opindex -c
-@opindex --check
@cindex checking whether a file is sorted
Check whether the given file is already sorted: if it is not all
sorted, print a diagnostic containing the first out-of-order line and
Otherwise, exit successfully.
At most one input file can be given.
-@item -C
+@optItem{sort,-C}
@itemx --check=quiet
@itemx --check=silent
-@opindex -c
@opindex --check
@cindex checking whether a file is sorted
Exit successfully if the given file is already sorted, and
At most one input file can be given.
This is like @option{-c}, except it does not print a diagnostic.
-@item -m
-@itemx --merge
-@opindex -m
-@opindex --merge
+@optItem{sort,-m}
+@optItemx{sort,--merge}
@cindex merging sorted files
Merge the given files by sorting them as a group. Each input file must
always be individually sorted. It always works to sort instead of
@table @samp
-@item -b
-@itemx --ignore-leading-blanks
-@opindex -b
-@opindex --ignore-leading-blanks
+@optItem{sort,-b}
+@optItemx{sort,--ignore-leading-blanks}
@cindex blanks, ignoring leading
@vindex LC_CTYPE
Ignore leading blanks when finding sort keys in each line.
rules, but without this option they will be significant for character
positions specified in keys with the @option{-k} option.
-@item -d
-@itemx --dictionary-order
-@opindex -d
-@opindex --dictionary-order
+@optItem{sort,-d}
+@optItemx{sort,--dictionary-order}
@cindex dictionary order
@cindex phone directory order
@cindex telephone directory order
By default letters and digits are those of ASCII and a blank
is a space or a tab, but the @env{LC_CTYPE} locale can change this.
-@item -f
-@itemx --ignore-case
-@opindex -f
-@opindex --ignore-case
+@optItem{sort,-f}
+@optItemx{sort,--ignore-case}
@cindex ignoring case
@cindex case folding
@vindex LC_CTYPE
equivalent instead. (Any @option{--reverse} given would only affect
the final result, after the throwing away.))
-@item -g
-@itemx --general-numeric-sort
-@itemx --sort=general-numeric
-@opindex -g
-@opindex --general-numeric-sort
-@opindex --sort
+@optItem{sort,-g}
+@optItemx{sort,--general-numeric-sort}
+@optItemx{sort,--sort,=general-numeric}
@cindex general numeric sort
@vindex LC_NUMERIC
Sort numerically, converting a prefix of each line to a long
and left padded with @samp{0} to a consistent width, a standard
lexicographic sort will be faster.
-@item -h
-@itemx --human-numeric-sort
+@optItem{sort,-h}
+@optItemx{sort,--human-numeric-sort}
@itemx --sort=human-numeric
-@opindex -h
-@opindex --human-numeric-sort
@opindex --sort
@cindex human numeric sort
@vindex LC_NUMERIC
To sort more accurately, you can use the @command{numfmt} command
to reformat numbers to human format @emph{after} the sort.
-@item -i
-@itemx --ignore-nonprinting
-@opindex -i
-@opindex --ignore-nonprinting
+@optItem{sort,-i}
+@optItemx{sort,--ignore-nonprinting}
@cindex nonprinting characters, ignoring
@cindex unprintable characters, ignoring
@vindex LC_CTYPE
This option has no effect if the stronger @option{--dictionary-order}
(@option{-d}) option is also given.
-@item -M
-@itemx --month-sort
+@optItem{sort,-M}
+@optItemx{sort,--month-sort}
@itemx --sort=month
-@opindex -M
-@opindex --month-sort
@opindex --sort
@cindex months, sorting by
@vindex LC_TIME
By default a blank is a space or a tab, but the @env{LC_CTYPE} locale
can change this.
-@item -n
-@itemx --numeric-sort
+@optItem{sort,-n}
+@optItemx{sort,--numeric-sort}
@itemx --sort=numeric
-@opindex -n
-@opindex --numeric-sort
@opindex --sort
@cindex numeric sort
@vindex LC_CTYPE
To compare such strings numerically, use the
@option{--general-numeric-sort} (@option{-g}) option.
-@item -V
-@itemx --version-sort
-@opindex -V
-@opindex --version-sort
+@optItem{sort,-V}
+@optItemx{sort,--version-sort}
+@itemx --sort=version
+@opindex --sort
@cindex version number sort
Sort by version name and number. It behaves like a standard sort,
except that each sequence of decimal digits is treated numerically
as an index/version number. (@xref{Version sort ordering}.)
-@item -r
-@itemx --reverse
-@opindex -r
-@opindex --reverse
+@optItem{sort,-r}
+@optItemx{sort,--reverse}
@cindex reverse sorting
Reverse the result of comparison, so that lines with greater key values
appear earlier in the output instead of later.
-@item -R
-@itemx --random-sort
+@optItem{sort,-R}
+@optItemx{sort,--random-sort}
@itemx --sort=random
-@opindex -R
-@opindex --random-sort
@opindex --sort
@cindex random sort
Sort by hashing the input keys and then sorting the hash values.
@table @samp
-@item --compress-program=@var{prog}
+@optItem{sort,--compress-program,@w{ }@var{prog}}
Compress any temporary files with the program @var{prog}.
With no arguments, @var{prog} must compress standard input to standard
@filesZeroFromOption{sort,,sorted output}
-@item -k @var{pos1}[,@var{pos2}]
-@itemx --key=@var{pos1}[,@var{pos2}]
-@opindex -k
-@opindex --key
+@optItem{sort,-k,@w{ }@var{pos1}[@comma{}@var{pos2}]}
+@optItemx{sort,--key,=@var{pos1}[@comma{}@var{pos2}]}
@cindex sort field
Specify a sort field that consists of the part of the line between
@var{pos1} and @var{pos2} (or the end of the line, if @var{pos2} is
See also the @option{--debug} option to help determine the part
of the line being used in the sort.
-@item --debug
+@optItem{sort,--debug}
Highlight the portion of each line used for sorting.
Also issue warnings about questionable usage to standard error.
-@item --batch-size=@var{nmerge}
-@opindex --batch-size
+@optItem{sort,--batch-size,=@var{nmerge}}
@cindex number of inputs to merge, nmerge
Merge at most @var{nmerge} inputs at once.
the value of @var{nmerge} exceeds the resource limit, @command{sort}
silently uses a smaller value.
-@item -o @var{output-file}
-@itemx --output=@var{output-file}
-@opindex -o
-@opindex --output
+@optItem{sort,-o,@w{ }@var{output-file}}
+@optItemx{sort,--output,=@var{output-file}}
@cindex overwriting of input, allowed
Write output to @var{output-file} instead of standard output.
Normally, @command{sort} reads all input before opening
scripts should specify @option{-o @var{output-file}} before any input
files.
-@item --random-source=@var{file}
-@opindex --random-source
+@optItem{sort,--random-source,=@var{file}}
@cindex random source for sorting
Use @var{file} as a source of random data used to determine which
random hash function to use with the @option{-R} option. @xref{Random
sources}.
-@item -s
-@itemx --stable
-@opindex -s
-@opindex --stable
+@optItem{sort,-s}
+@optItemx{sort,--stable}
@cindex sort stability
@cindex sort's last-resort comparison
This option has no effect if no fields or global ordering options
other than @option{--reverse} (@option{-r}) are specified.
-@item -S @var{size}
-@itemx --buffer-size=@var{size}
-@opindex -S
-@opindex --buffer-size
+@optItem{sort,-S,@w{ }@var{size}}
+@optItemx{sort,--buffer-size,=@var{size}}
@cindex size for main memory sorting
Use a main-memory sort buffer of the given @var{size}. By default,
@var{size} is in units of 1024 bytes. Appending @samp{%} causes
grows beyond @var{size} if @command{sort} encounters input lines larger
than @var{size}.
-@item -t @var{separator}
-@itemx --field-separator=@var{separator}
-@opindex -t
-@opindex --field-separator
+@optItem{sort,-t,@w{ }@var{separator}}
+@optItemx{sort,--field-separator,=@var{separator}}
@cindex field separator character
Use character @var{separator} as the field separator when finding the
sort keys in each line. By default, fields are separated by the empty
To specify ASCII NUL as the field separator,
use the two-character string @samp{\0}, e.g., @samp{sort -t '\0'}.
-@item -T @var{tempdir}
-@itemx --temporary-directory=@var{tempdir}
-@opindex -T
-@opindex --temporary-directory
+@optItem{sort,-T,@w{ }@var{tempdir}}
+@optItemx{sort,--temporary-directory,=@var{tempdir}}
@cindex temporary directory
@vindex TMPDIR
Use directory @var{tempdir} to store temporary files, overriding the
performance by using this option to specify directories on different
file systems.
-@item --parallel=@var{n}
-@opindex --parallel
+@optItem{sort,--parallel,=@var{n}}
@cindex multithreaded sort
Set the number of sorts run in parallel to @var{n}. By default,
@var{n} is set to the number of available processors, but limited
Using @var{n} threads increases the memory usage by
a factor of log @var{n}. Also see @ref{nproc invocation}.
-@item -u
-@itemx --unique
-@opindex -u
-@opindex --unique
+@optItem{sort,-u}
+@optItemx{sort,--unique}
@cindex uniquifying output
Normally, output only the first of a sequence of lines that compare
numeric string when checking for uniqueness, whereas @code{sort -n |
uniq} inspects the entire line. @xref{uniq invocation}.
-@optZeroTerminated
+@optZeroTerminated{sort}
@macro newlineFieldSeparator
With @option{-z} the newline character is treated as a field separator.
@end macro
@table @samp
-@item -e
-@itemx --echo
-@opindex -c
-@opindex --echo
+@optItem{shuf,-e}
+@optItemx{shuf,--echo}
@cindex command-line operands to shuffle
Treat each command-line operand as an input line.
-@item -i @var{lo}-@var{hi}
-@itemx --input-range=@var{lo}-@var{hi}
-@opindex -i
-@opindex --input-range
+@optItem{shuf,-i,@w{ }@var{lo}-@var{hi}}
+@optItemx{shuf,--input-range,=@var{lo}-@var{hi}}
@cindex input range to shuffle
Act as if input came from a file containing the range of unsigned
decimal integers @var{lo}@dots{}@var{hi}, one per line.
@table @samp
-@item -n @var{count}
-@itemx --head-count=@var{count}
-@opindex -n
-@opindex --head-count
+@optItem{shuf,-n,@w{ }@var{count}}
+@optItemx{shuf,--head-count,=@var{count}}
@cindex head of output
Output at most @var{count} lines. By default, all input lines are
output.
-@item -o @var{output-file}
-@itemx --output=@var{output-file}
-@opindex -o
-@opindex --output
+@optItem{shuf,-o,@w{ }@var{output-file}}
+@optItemx{shuf,--output,=@var{output-file}}
@cindex overwriting of input, allowed
Write output to @var{output-file} instead of standard output.
@command{shuf} reads all input before opening
@var{output-file}, so you can safely shuffle a file in place by using
commands like @code{shuf -o F <F} and @code{cat F | shuf -o F}.
-@item --random-source=@var{file}
-@opindex --random-source
+@optItem{shuf,--random-source,=@var{file}}
@cindex random source for shuffling
Use @var{file} as a source of random data used to determine which
permutation to generate. @xref{Random sources}.
-@item -r
-@itemx --repeat
-@opindex -r
-@opindex --repeat
+@optItem{shuf,-r}
+@optItemx{shuf,--repeat}
@cindex repeat output values
Repeat output values, that is, select with replacement. With this
option the output is not a permutation of the input; instead, each
@option{--head-count} is not given, @command{shuf} repeats
indefinitely.
-@optZeroTerminated
+@optZeroTerminated{shuf}
@end table
@table @samp
-@item -f @var{n}
-@itemx --skip-fields=@var{n}
-@opindex -f
-@opindex --skip-fields
+@optItem{uniq,-f,@w{ }@var{n}}
+@optItemx{uniq,--skip-fields,=@var{n}}
Skip @var{n} fields on each line before checking for uniqueness. Use
a null string for comparison if a line has fewer than @var{n} fields.
Fields are a sequence of blank characters followed by non-blank characters.
For compatibility @command{uniq} supports a traditional option syntax
@option{-@var{n}}. New scripts should use @option{-f @var{n}} instead.
-@item -s @var{n}
-@itemx --skip-chars=@var{n}
-@opindex -s
-@opindex --skip-chars
+@optItem{uniq,-s,@w{ }@var{n}}
+@optItemx{uniq,--skip-chars,=@var{n}}
Skip @var{n} characters before checking for uniqueness. Use a null string
for comparison if a line has fewer than @var{n} characters. If you use both
the field and character skipping options, fields are skipped over first.
For example, use @samp{uniq ./+10} or @samp{uniq -s 10} rather than
the ambiguous @samp{uniq +10}.
-@item -c
-@itemx --count
-@opindex -c
-@opindex --count
+@optItem{uniq,-c}
+@optItemx{uniq,--count}
Print the number of times each line occurred along with the line.
-@item -i
-@itemx --ignore-case
-@opindex -i
-@opindex --ignore-case
+@optItem{uniq,-i}
+@optItemx{uniq,--ignore-case}
Ignore differences in case when comparing lines.
-@item -d
-@itemx --repeated
-@opindex -d
-@opindex --repeated
+@optItem{uniq,-d}
+@optItemx{uniq,--repeated}
@cindex repeated lines, outputting
Discard lines that are not repeated. When used by itself, this option
causes @command{uniq} to print the first copy of each repeated line,
and nothing else.
-@item -D
-@itemx --all-repeated[=@var{delimit-method}]
-@opindex -D
-@opindex --all-repeated
+@optItem{uniq,-D}
+@optItemx{uniq,--all-repeated,[=@var{delimit-method}]}
@cindex all repeated lines, outputting
Do not discard the second and subsequent repeated input lines,
but discard lines that are not repeated.
This is a GNU extension.
@c FIXME: give an example showing *how* it's useful
-@item --group[=@var{delimit-method}]
-@opindex --group
+@optItem{uniq,--group,[=@var{delimit-method}]}
@cindex all lines, grouping
Output all lines, and delimit each unique group.
@nulOutputNote
This is a GNU extension.
-@item -u
-@itemx --unique
-@opindex -u
-@opindex --unique
+@optItem{uniq,-u}
+@optItemx{uniq,--unique}
@cindex unique lines, outputting
Discard the last line that would be output for a repeated input group.
When used by itself, this option causes @command{uniq} to print unique
lines, and nothing else.
-@item -w @var{n}
-@itemx --check-chars=@var{n}
-@opindex -w
-@opindex --check-chars
+@optItem{uniq,-w,@w{ }@var{n}}
+@optItemx{uniq,--check-chars,=@var{n}}
Compare at most @var{n} characters on each line (after skipping any specified
fields and characters). By default the entire rest of the lines are
compared.
-@optZeroTerminated
+@optZeroTerminated{uniq}
@newlineFieldSeparator
@end table
@table @samp
-@item --check-order
+@optItem{comm,--check-order}
Fail with an error message if either input file is wrongly ordered.
-@item --nocheck-order
+@optItem{comm,--nocheck-order}
Do not check that both input files are in sorted order.
Other options are:
-@item --output-delimiter=@var{str}
+@optItem{comm,--output-delimiter,=@var{str}}
Print @var{str} between adjacent output columns,
rather than the default of a single TAB character.
The delimiter @var{str} may be empty, in which case
the ASCII NUL character is used to delimit output columns.
-@item --total
+@optItem{comm,--total}
Output a summary at the end.
Similar to the regular output,
4
@end example
-@optZeroTerminated
+@optZeroTerminated{comm}
@end table
@table @samp
-@item -G
-@itemx --traditional
+@optItem{ptx,-G}
+@optItemx{ptx,--traditional}
As already explained, this option disables all GNU extensions to
@command{ptx} and switches to traditional mode.
@table @samp
-@item -f
-@itemx --ignore-case
-@opindex -f
-@opindex --ignore-case
+@optItem{ptx,-f}
+@optItemx{ptx,--ignore-case}
Fold lower case letters to upper case for sorting.
@end table
@table @samp
-@item -b @var{file}
-@itemx --break-file=@var{file}
-@opindex -b
-@opindex --break-file
-
+@optItem{ptx,-b,@w{ }@var{file}}
+@optItemx{ptx,--break-file,=@var{file}}
This option provides an alternative (to @option{-W}) method of describing
which characters make up words. It introduces the name of a
-file which contains a list of characters which can@emph{not} be part of
+@var{file} which contains a list of characters which can@emph{not} be part of
one word; this file is called the @dfn{Break file}. Any character which
is not part of the Break file is a word constituent. If both options
@option{-b} and @option{-W} are specified, then @option{-W} has precedence and
are disabled, spaces, tabs and newlines are always considered as break
characters even if not included in the Break file.
-@item -i @var{file}
-@itemx --ignore-file=@var{file}
-@opindex -i
-@opindex --ignore-file
-
-The file associated with this option contains a list of words which will
+@optItem{ptx,-i,@w{ }@var{file}}
+@optItemx{ptx,--ignore-file,=@var{file}}
+The @var{file} associated with this option contains a list of words which will
never be taken as keywords in concordance output. It is called the
@dfn{Ignore file}. The file contains exactly one word in each line; the
end of line separation of words is not subject to the value of the
@option{-S} option.
-@item -o @var{file}
-@itemx --only-file=@var{file}
-@opindex -o
-@opindex --only-file
-
-The file associated with this option contains a list of words which will
+@optItem{ptx,-o,@w{ }@var{file}}
+@optItemx{ptx,--only-file,=@var{file}}
+The @var{file} associated with this option contains a list of words which will
be retained in concordance output; any word not mentioned in this file
is ignored. The file is called the @dfn{Only file}. The file contains
exactly one word in each line; the end of line separation of words is
Ignore file are specified, a word is considered a keyword only
if it is listed in the Only file and not in the Ignore file.
-@item -r
-@itemx --references
-@opindex -r
-@opindex --references
-
+@optItem{ptx,-r}
+@optItemx{ptx,--references}
On each input line, the leading sequence of non-white space characters will be
taken to be a reference that has the purpose of identifying this input
line in the resulting permuted index.
are disabled, this condition is always met and references are completely
excluded from the output contexts.
-@item -S @var{regexp}
-@itemx --sentence-regexp=@var{regexp}
-@opindex -S
-@opindex --sentence-regexp
-
+@optItem{ptx,-S,@w{ }@var{regexp}}
+@optItemx{ptx,--sentence-regexp,=@var{regexp}}
This option selects which regular expression will describe the end of a
line or the end of a sentence. In fact, this regular expression is not
the only distinction between end of lines or end of sentences, and input
line boundaries have no special significance outside this option. By
default, when GNU extensions are enabled and if @option{-r} option is not
-used, end of sentences are used. In this case, this @var{regex} is
+used, end of sentences are used. In this case, this @var{regexp} is
imported from GNU Emacs:
@example
sequences from the C language are recognized and converted to the
corresponding characters by @command{ptx} itself.
-@item -W @var{regexp}
-@itemx --word-regexp=@var{regexp}
-@opindex -W
-@opindex --word-regexp
-
+@optItem{ptx,-W,@w{ }@var{regexp}}
+@optItemx{ptx,--word-regexp,=@var{regexp}}
This option selects which regular expression will describe each keyword.
By default, if GNU extensions are enabled, a word is a sequence of
letters; the @var{regexp} used is @samp{\w+}. When GNU extensions are
@table @samp
-@item -g @var{number}
-@itemx --gap-size=@var{number}
-@opindex -g
-@opindex --gap-size
-
+@optItem{ptx,-g,@w{ }@var{number}}
+@optItemx{ptx,--gap-size,=@var{number}}
Select the size of the minimum white space gap between the fields on the
output line.
-@item -w @var{number}
-@itemx --width=@var{number}
-@opindex -w
-@opindex --width
-
+@optItem{ptx,-w,@w{ }@var{number}}
+@optItemx{ptx,--width,=@var{number}}
Select the maximum output width of each final line. If references are
used, they are included or excluded from the maximum output width
depending on the value of option @option{-R}@. If this option is not
into account the space taken by references, nor the gap that precedes
them.
-@item -A
-@itemx --auto-reference
-@opindex -A
-@opindex --auto-reference
-
+@optItem{ptx,-A}
+@optItemx{ptx,--auto-reference}
Select automatic references. Each input line will have an automatic
reference made up of the file name and the line ordinal, with a single
colon between them. However, the file name will be empty when standard
the input reference is still read and skipped, but the automatic
reference is used at output time, overriding the input reference.
-@item -R
-@itemx --right-side-refs
-@opindex -R
-@opindex --right-side-refs
-
+@optItem{ptx,-R}
+@optItemx{ptx,--right-side-refs}
In the default output format, when option @option{-R} is not used, any
references produced by the effect of options @option{-r} or @option{-A} are
placed to the far right of output lines, after the right context. With
This option is automatically selected whenever GNU extensions are
disabled.
-@item -F @var{string}
-@itemx --flag-truncation=@var{string}
-@opindex -F
-@opindex --flag-truncation
-
+@optItem{ptx,-F,@w{ }@var{string}}
+@optItemx{ptx,--flag-truncation,=@var{string}}
This option will request that any truncation in the output be reported
using the string @var{string}. Most output fields theoretically extend
towards the beginning or the end of the current line, or current
sequences, as found in the C language, are recognized and converted to
the corresponding characters by @command{ptx} itself.
-@item -M @var{string}
-@itemx --macro-name=@var{string}
-@opindex -M
-@opindex --macro-name
-
+@optItem{ptx,-M,@w{ }@var{string}}
+@optItemx{ptx,--macro-name,=@var{string}}
Select another @var{string} to be used instead of @samp{xx}, while
generating output suitable for @command{nroff}, @command{troff} or @TeX{}.
-@item -O
-@itemx --format=roff
-@opindex -O
-@opindex --format=roff
-
+@optItem{ptx,-O}
+@optItemx{ptx,--format,=roff}
Choose an output format suitable for @command{nroff} or @command{troff}
processing. Each output line will look like:
compress consecutive spaces. Each quote character @samp{"} is doubled
so it will be correctly processed by @command{nroff} or @command{troff}.
-@item -T
+@optItem{ptx,-T}
@itemx --format=tex
-@opindex -T
@opindex --format=tex
Choose an output format suitable for @TeX{} processing. Each output
@table @samp
-@item -b @var{byte-list}
-@itemx --bytes=@var{byte-list}
-@opindex -b
-@opindex --bytes
+@optItem{cut,-b,@w{ }@var{byte-list}}
+@optItemx{cut,--bytes,=@var{byte-list}}
Select for printing only the bytes in positions listed in
@var{byte-list}. Tabs and backspaces are treated like any other
character; they take up 1 byte. If an output delimiter is specified,
(see the description of @option{--output-delimiter}), then output that
string between ranges of selected bytes.
-@item -c @var{character-list}
-@itemx --characters=@var{character-list}
-@opindex -c
-@opindex --characters
+@optItem{cut,-c,@w{ }@var{character-list}}
+@optItemx{cut,--characters,=@var{character-list}}
Select for printing only the characters in positions listed in
@var{character-list}. The same as @option{-b} for now, but
internationalization will change that. Tabs and backspaces are
@option{--output-delimiter}), then output that string between ranges
of selected bytes.
-@item -f @var{field-list}
-@itemx --fields=@var{field-list}
-@opindex -f
-@opindex --fields
+@optItem{cut,-f,@w{ }@var{field-list}}
+@optItemx{cut,--fields,@var{field-list}}
Select for printing only the fields listed in @var{field-list}.
Fields are separated by a TAB character by default. Also print any
line that contains no delimiter character, unless the
@end verbatim
@end example
-@item -d @var{input_delim_byte}
-@itemx --delimiter=@var{input_delim_byte}
-@opindex -d
-@opindex --delimiter
+@optItem{cut,-d,@w{ }@var{input_delim_byte}}
+@optItemx{cut,--delimiter,=@var{input_delim_byte}}
With @option{-f}, use the first byte of @var{input_delim_byte} as
the input fields separator (default is TAB).
-@item -n
-@opindex -n
+@optItem{cut,-n}
Do not split multi-byte characters (no-op for now).
-@item -s
-@itemx --only-delimited
-@opindex -s
-@opindex --only-delimited
+@optItem{cut,-s}
+@optItemx{cut,--only-delimited}
For @option{-f}, do not print lines that do not contain the field separator
character. Normally, any line without a field separator is printed verbatim.
-@item --output-delimiter=@var{output_delim_string}
-@opindex --output-delimiter
-With @option{-f}, output fields are separated by @var{output_delim_string}.
+@optItem{cut,--output-delimiter,=@var{string}}
+With @option{-f}, output fields are separated by @var{string}.
The default with @option{-f} is to use the input delimiter.
When using @option{-b} or @option{-c} to select ranges of byte or
character offsets (as opposed to ranges of fields),
output @var{output_delim_string} between non-overlapping
ranges of selected bytes.
-@item --complement
-@opindex --complement
+@optItem{cut,--complement}
This option is a GNU extension.
Select for printing the complement of the bytes, characters or fields
selected with the @option{-b}, @option{-c} or @option{-f} options.
specified via those options. This option is useful when you have
many fields and want to print all but a few of them.
-@optZeroTerminated
+@optZeroTerminated{cut}
@end table
@table @samp
-@item -s
-@itemx --serial
-@opindex -s
-@opindex --serial
+@optItem{paste,-s}
+@optItemx{paste,--serial}
Paste the lines of one file at a time rather than one line from each
file. Using the above example data:
a b c
@end example
-@item -d @var{delim-list}
-@itemx --delimiters=@var{delim-list}
-@opindex -d
-@opindex --delimiters
+@optItem{paste,-d,@w{ }@var{delim-list}}
+@optItemx{paste,--delimiter,=@var{delim-list}}
Consecutively use the characters in @var{delim-list} instead of
TAB to separate merged lines. When @var{delim-list} is
exhausted, start again at its beginning. Using the above example data:
%c_
@end example
-@optZeroTerminated
+@optZeroTerminated{paste}
@end table
@table @samp
-@item -a @var{file-number}
-@opindex -a
+@optItem{join,-a,@w{ }@var{file-number}}
Print a line for each unpairable line in file @var{file-number} (either
@samp{1} or @samp{2}), in addition to the normal output.
-@item --check-order
+@optItem{join,--check-order}
Fail with an error message if either input file is wrongly ordered.
-@item --nocheck-order
+@optItem{join,--nocheck-order}
Do not check that both input files are in sorted order. This is the default.
-@item -e @var{string}
-@opindex -e
+@optItem{join,-e,@w{ }@var{string}}
Replace those output fields that are missing in the input with @var{string}.
I.e., missing fields specified with the @option{-12jo} options.
-@item --header
-@opindex --header
+@optItem{join,--header}
Treat the first line of each input file as a header line. The header lines
will be joined and printed as the first output line. If @option{-o} is used to
specify output format, the header line will be printed according to the
@option{--check-order} is specified. Also if the header lines from each file
do not match, the heading fields from the first file will be used.
-@item -i
-@itemx --ignore-case
-@opindex -i
-@opindex --ignore-case
+@optItem{join,-i}
+@optItemx{join,--ignore-case}
Ignore differences in case when comparing keys.
With this option, the lines of the input files must be ordered in the same way.
Use @samp{sort -f} to produce this ordering.
-@item -1 @var{field}
-@opindex -1
+@optItem{join,-1,@w{ }@var{field}}
Join on field @var{field} (a positive integer) of file 1.
-@item -2 @var{field}
-@opindex -2
+@optItem{join,-2,@w{ }@var{field}}
Join on field @var{field} (a positive integer) of file 2.
-@item -j @var{field}
+@optItem{join,-j,@w{ }@var{field}}
Equivalent to @option{-1 @var{field} -2 @var{field}}.
-@item -o @var{field-list}
+@optItem{join,-o,@w{ }@var{field-list}}
@itemx -o auto
If the keyword @samp{auto} is specified, infer the output format from
the first line in each file. This is the same as the default output format
All output lines -- including those printed because of any @option{-a}
or @option{-v} option -- are subject to the specified @var{field-list}.
-@item -t @var{char}
+@optItem{join,-t,@w{ }@var{char}}
Use character @var{char} as the input and output field separator.
Treat as significant each occurrence of @var{char} in the input file.
Use @samp{sort -t @var{char}}, without the @option{-b} option of
If @samp{-t '\0'} is specified then the ASCII NUL
character is used to delimit the fields.
-@item -v @var{file-number}
+@optItem{join,-v,@w{ }@var{file-number}}
Print a line for each unpairable line in file @var{file-number}
(either @samp{1} or @samp{2}), instead of the normal output.
-@optZeroTerminated
+@optZeroTerminated{join}
@newlineFieldSeparator
@end table
@table @samp
-@item -c
-@itemx -C
-@itemx --complement
-@opindex -c
-@opindex -C
-@opindex --complement
+@optItem{tr,-c}
+@optItemx{tr,-C}
+@optItemx{tr,--complement}
Instead of @var{array1}, use its complement (all characters not
specified by @var{string1}), in ascending order. Use this option with
caution in multibyte locales where its meaning is not always clear
or portable; see @ref{Character arrays}.
-@item -d
-@itemx --delete
-@opindex -d
-@opindex --delete
+@optItem{tr,-d}
+@optItemx{tr,--delete}
Delete characters in @var{array1}; do not translate.
-@item -s
-@itemx --squeeze-repeats
-@opindex -s
-@opindex --squeeze-repeats
+@optItem{tr,-s}
+@optItemx{tr,--squeeze-repeats}
Replace each sequence of a repeated character that is listed in
the last specified @var{array}, with a single occurrence of that character.
-@item -t
-@itemx --truncate-set1
-@opindex -t
-@opindex --truncate-set1
+@optItem{tr,-t}
+@optItemx{tr,--truncate-set1}
Truncate @var{array1} to the length of @var{array2}.
@end table
@table @samp
-@item -t @var{tab1}[,@var{tab2}]@dots{}
-@itemx --tabs=@var{tab1}[,@var{tab2}]@dots{}
-@opindex -t
-@opindex --tabs
+@optItem{expand,@w{ }@var{tab1}[@comma{}@var{tab2}]@dots{}}
+@optItemx{expand,--tabs,=@var{tab1}[@comma{}@var{tab2}]@dots{}}
@cindex tab stops, setting
If only one tab stop is given, set the tabs @var{tab1} spaces apart
(default is 8). Otherwise, set the tabs at columns @var{tab1},
option syntax, @option{-@var{t1}[,@var{t2}]@dots{}}. New scripts
should use @option{-t @var{t1}[,@var{t2}]@dots{}} instead.
-@item -i
-@itemx --initial
-@opindex -i
-@opindex --initial
+@optItem{expand,-i}
+@optItemx{expand,--initial}
@cindex initial tabs, converting
Only convert initial tabs (those that precede all non-space or non-tab
characters) on each line to spaces.
@table @samp
-@item -t @var{tab1}[,@var{tab2}]@dots{}
-@itemx --tabs=@var{tab1}[,@var{tab2}]@dots{}
-@opindex -t
-@opindex --tabs
+@optItem{unexpand,@w{ }@var{tab1}[@comma{}@var{tab2}]@dots{}}
+@optItemx{unexpand,--tabs,=@var{tab1}[@comma{}@var{tab2}]@dots{}}
If only one tab stop is given, set the tabs @var{tab1} columns apart
instead of the default 8. Otherwise, set the tabs at columns
@var{tab1}, @var{tab2}, @dots{} (numbered from 0), and leave blanks
not imply @option{-a}.) New scripts should use @option{--first-only -t
@var{tab1}[,@var{tab2}]@dots{}} instead.
-@item -a
-@itemx --all
-@opindex -a
-@opindex --all
+@optItem{unexpand,-a}
+@optItemx{unexpand,--all}
Also convert all sequences of two or more blanks just before a tab stop,
even if they occur after non-blank characters in a line.
+@optItem{unexpand,--first-only}
+Convert only leading sequences of blanks (overrides @option{-a}).
@end table
@exitstatus
@table @samp
-@item -a
-@itemx --all
-@opindex -a
-@opindex --all
+@optItem{ls,-a}
+@optItemx{ls,--all}
In directories, do not ignore file names that start with @samp{.}.
-@item -A
-@itemx --almost-all
-@opindex -A
-@opindex --almost-all
+@optItem{ls,-A}
+@optItemx{ls,--almost-all}
In directories, do not ignore all file names that start with @samp{.};
ignore only @file{.} and @file{..}. The @option{--all} (@option{-a})
option overrides this option.
-@item -B
-@itemx --ignore-backups
-@opindex -B
-@opindex --ignore-backups
+@optItem{ls,-B}
+@optItemx{ls,--ignore-backups}
@cindex backup files, ignoring
In directories, ignore files that end with @samp{~}. This option is
equivalent to @samp{--ignore='*~' --ignore='.*~'}.
-@item -d
-@itemx --directory
-@opindex -d
-@opindex --directory
+@optItem{ls,-d}
+@optItemx{ls,--directory}
List just the names of directories, as with other types of files, rather
than listing their contents.
@c The following sentence is the same as the one for -F.
@option{--dereference} (@option{-L}), or
@option{--dereference-command-line-symlink-to-dir} options are specified.
-@item -H
-@itemx --dereference-command-line
-@opindex -H
-@opindex --dereference-command-line
+@optItem{ls,-H}
+@optItemx{ls,--dereference-command-line}
@cindex symbolic links, dereferencing
If a command line argument specifies a symbolic link, show information
for the file the link references rather than for the link itself.
-@item --dereference-command-line-symlink-to-dir
-@opindex --dereference-command-line-symlink-to-dir
+@optItem{ls,--dereference-command-line-symlink-to-dir}
@cindex symbolic links, dereferencing
Do not dereference symbolic links, with one exception:
if a command line argument specifies a symbolic link that refers to
@option{--dereference} (@option{-L}), or
@option{--dereference-command-line} (@option{-H})).
-@item --hide=PATTERN
-@opindex --hide=@var{pattern}
+@optItem{ls,--hide,=@var{pattern}}
In directories, ignore files whose names match the shell pattern
@var{pattern}, unless the @option{--all} (@option{-a}) or
@option{--almost-all} (@option{-A}) is also given. This
an alias for @samp{ls --ignore='*~'}, then the command @samp{lx -A}
lists the file @file{README~} even though @samp{ly -A} would not.
-@item -I @var{pattern}
-@itemx --ignore=@var{pattern}
-@opindex -I
-@opindex --ignore=@var{pattern}
+@optItem{ls,-I,@w{ }@var{pattern}}
+@optItemx{ls,--ignore,=@var{pattern}}
In directories, ignore files whose names match the shell pattern
(not regular expression) @var{pattern}. As
in the shell, an initial @samp{.} in a file name does not match a
the second ignores all two-character names that start with @samp{.}
except @samp{..}, and the third ignores names that start with @samp{#}.
-@item -L
-@itemx --dereference
-@opindex -L
-@opindex --dereference
+@optItem{ls,-L}
+@optItemx{ls,--dereference}
@cindex symbolic links, dereferencing
When showing file information for a symbolic link, show information
for the file the link references rather than the link itself.
However, even with this option, @command{ls} still prints the name
of the link itself, not the name of the file that the link points to.
-@item -R
-@itemx --recursive
-@opindex -R
-@opindex --recursive
+@optItem{ls,-R}
+@optItemx{ls,--recursive}
@cindex recursive directory listing
@cindex directory listing, recursive
List the contents of all directories recursively.
@table @samp
-@item --author
-@opindex --author
+@optItem{ls,--author}
@cindex hurd, author, printing
In long format, list each file's author.
In GNU/Hurd, file authors can differ from their owners, but in other
operating systems the two are the same.
-@item -D
-@itemx --dired
-@opindex -D
-@opindex --dired
+@optItem{ls,-D}
+@optItemx{ls,--dired}
@cindex dired Emacs mode support
Print an additional line after the main output:
with hyperlinks disabled, and takes precedence over previously specified
output formats or hyperlink mode.
-@item --full-time
-@opindex --full-time
+@optItem{ls,--full-time}
Produce long format, and list times in full. It is
equivalent to using @option{--format=long} (@option{-l}) with
@option{--time-style=full-iso} (@pxref{Formatting file timestamps}).
-@item -g
-@opindex -g
+@optItem{ls,-g}
Produce long format, but omit owner information.
-@item -G
-@itemx --no-group
-@opindex -G
-@opindex --no-group
+@optItem{ls,-G}
+@optItemx{ls,--no-group}
Inhibit display of group information in long format.
(This is the default in some non-GNU versions of @command{ls}, so we
provide this option for compatibility.)
-@optHumanReadable
+@optHumanReadable{ls}
-@item -i
-@itemx --inode
-@opindex -i
-@opindex --inode
+@optItem{ls,-i}
+@optItemx{ls,--inode}
@cindex inode number, printing
Print the inode number (also called the file serial number and index
number) of each file to the left of the file name. (This number
uniquely identifies each file within a particular file system.)
-@item -l
-@itemx --format=long
+@optItem{ls,-l}
+@optItemx{ls,--format,=long}
@itemx --format=verbose
-@opindex -l
-@opindex --format
@opindex long ls @r{format}
@opindex verbose ls @r{format}
Produce long format.
whether alternate access methods apply to the file, which may happen for
example with some NFS setups with files without read permission.
-@item -n
-@itemx --numeric-uid-gid
-@opindex -n
-@opindex --numeric-uid-gid
+@optItem{ls,-n}
+@optItemx{ls,--numeric-uid-gid}
@cindex numeric uid and gid
@cindex numeric user and group IDs
Produce long format, but
display right-justified numeric user and group IDs
instead of left-justified owner and group names.
-@item -o
-@opindex -o
+@optItem{ls,-o}
Produce long format, but omit group information.
It is equivalent to using @option{--format=long} (@option{-l})
with @option{--no-group} (@option{-G}).
-@item -s
-@itemx --size
-@opindex -s
-@opindex --size
+@optItem{ls,-s}
+@optItemx{ls,--size}
@cindex file system allocation
@cindex size of files, reporting
Print the file system allocation of each file to the left of the file name.
that are NFS-mounted from BSD systems. This is due to a flaw in HP-UX;
it also affects the HP-UX @command{ls} program.
-@optSi
+@optSi{ls}
-@item -Z
-@itemx --context
-@opindex -Z
-@opindex --context
+@optItem{ls,-Z}
+@optItemx{ls,--context}
@cindex SELinux
@cindex security context
Display the SELinux security context or @samp{?} if none is found.
@table @samp
-@item -c
+@optItem{ls,-c}
@itemx --time=ctime
@itemx --time=status
-@opindex -c
@opindex --time
@opindex ctime@r{, printing or sorting by}
@opindex status time@r{, printing or sorting by}
When sorting by time or when not using long format,
sort according to the ctime. @xref{File timestamps}.
-@item -f
-@opindex -f
+@optItem{ls,-f}
@cindex unsorted directory listing
@cindex directory order, listing by
Do not sort, and list all files.
This is like @option{--sort=none} (@option{-U}) combined
with @option{--all} (@option{-a}).
-@item --group-directories-first
-@opindex --group-directories-first
+@optItem{ls,--group-directories-first}
When listing a directory's files,
group all subdirectories before non-directories
and then sort the subdirectories and the non-directories separately.
However, any use of @option{--sort=none}
(@option{-U}) disables this option altogether.
-@item -r
-@itemx --reverse
-@opindex -r
-@opindex --reverse
+@optItem{ls,-r}
+@optItemx{ls,--reverse}
@cindex reverse sorting
Reverse whatever the sorting method is -- e.g., list files in reverse
alphabetical order, youngest first, smallest first, or whatever.
This option has no effect when @option{--sort=none} (@option{-U})
is in effect.
-@item -S
-@itemx --sort=size
-@opindex -S
-@opindex --sort
+@optItem{ls,-S}
+@optItemx{ls,--sort,=size}
@opindex size of files@r{, sorting files by}
Sort by file size, largest first.
-@item -t
+@optItem{ls,-t}
@itemx --sort=time
-@opindex -t
@opindex --sort
@opindex modification timestamp@r{, sorting files by}
Sort by modification timestamp (mtime) by default, newest first.
The timestamp to order by can be changed with the @option{--time} option.
@xref{File timestamps}.
-@item -u
-@itemx --time=atime
+@optItem{ls,-u}
+@optItem{ls,--time,=atime}
@itemx --time=access
@itemx --time=use
-@opindex -u
-@opindex --time
@opindex use time@r{, printing or sorting files by}
@opindex atime@r{, printing or sorting files by}
@opindex access timestamp@r{, printing or sorting files by}
sort according to the birth time.
@xref{File timestamps}.
-@item -U
+@optItem{ls,-U}
@itemx --sort=none
-@opindex -U
@opindex --sort
@opindex none@r{, sorting option for @command{ls}}
Do not sort; list the files in whatever order they are
Unlike @option{-f}, this option does not imply @option{--all}
(@option{-a}).
-@item -v
+@optItem{ls,-v}
@itemx --sort=version
-@opindex -v
@opindex --sort
@opindex version@r{, sorting option for @command{ls}}
Sort by version name and number, lowest first. It behaves like a default
This can be useful with the @option{--format=vertical} (@option{-C})
output format, to most densely display the listed files.
-@item -X
+@optItem{ls,-X}
@itemx --sort=extension
-@opindex -X
@opindex --sort
@opindex extension@r{, sorting files by}
Sort directory contents alphabetically by file extension (characters
@option{--hide-control-chars} (@option{-q}), and @option{--zero} options
to disambiguate output of file names containing newline characters.
-@item -1
-@opindex -1
+@optItem{ls,-1}
List one file per line. This is like @option{--format=single-column}
except that it has no effect if long format is also in effect.
-@item -C
+@optItem{ls,-C}
@itemx --format=vertical
-@opindex -C
@opindex --format
@opindex vertical @r{sorted files in columns}
List files in columns, sorted vertically, with no other information.
GNU @command{ls} uses variable width columns to display as many files as
possible in the fewest lines.
-@item --color [=@var{when}]
-@opindex --color
+@optItem{ls,--color,[=@var{when}]}
@cindex color, distinguishing file types with
Specify whether to use color for distinguishing file types; @var{when}
may be omitted, or one of:
and on a @code{dirent.d_type}-capable file system, @command{ls}
will perform only one @code{stat} call per command line argument.
-@item -F
-@itemx --classify [=@var{when}]
+@optItem{ls,F}
+@optItemx{ls,--classify,[=@var{when}]}
@itemx --indicator-style=classify
-@opindex -F
-@opindex --classify
@opindex --indicator-style
@cindex file type and executables, marking
@cindex executables and file type, marking
@option{--dereference} (@option{-L}), or
@option{--dereference-command-line-symlink-to-dir} options are specified.
-@item --file-type
+@optItem{ls,--file-type}
@itemx --indicator-style=file-type
-@opindex --file-type
@opindex --indicator-style
@cindex file type, marking
Append a character to each file name indicating the file type. This is
like @option{--classify} (@option{-F}, except that executables are not marked.
-@item --hyperlink [=@var{when}]
-@opindex --hyperlink
+@optItem{ls,--hyperlink,[=@var{when}]}
@cindex hyperlink, linking to files
Output codes recognized by some terminals to link
to files using the @samp{file://} URI format.
Specifying @option{--hyperlink} and no @var{when} is equivalent to
@option{--hyperlink=always}.
-@item --indicator-style=@var{word}
-@opindex --indicator-style
+@optItem{ls,--indicator-style,=@var{word}}
Append a character indicator with style @var{word} to file names,
as follows:
(@option{-F}) option.
@end table
-@item -k
-@itemx --kibibytes
-@opindex -k
-@opindex --kibibytes
+@optItem{ls,-k}
+@optItemx{ls,--kibibytes}
Set the default block size to its normal value of 1024 bytes,
overriding any contrary specification in environment variables
(@pxref{Block size}). If @option{--block-size},
option. It does not affect the file size in bytes that is written in
long format.
-@item -m
+@optItem{ls,-m}
@itemx --format=commas
-@opindex -m
@opindex --format
@opindex commas@r{, outputting between files}
List files horizontally, with as many as will fit on each line,
separated by @samp{, } (a comma and a space),
and with no other information.
-@item -p
+@optItem{ls,-p}
@itemx --indicator-style=slash
-@opindex -p
@opindex --indicator-style
@cindex file type, marking
Append a @samp{/} to directory names.
-@item -x
+@optItem{ls,-x}
@itemx --format=across
@itemx --format=horizontal
-@opindex -x
@opindex --format
@opindex across@r{, listing files}
@opindex horizontal@r{, listing files}
List the files in columns, sorted horizontally.
-@item -T @var{cols}
-@itemx --tabsize=@var{cols}
-@opindex -T
-@opindex --tabsize
+@optItem{ls,-T,@w{ }@var{cols}}
+@optItemx{ls,--tabsize,=@var{cols}}
Assume that each tab stop is @var{cols} columns wide. The default is 8.
@command{ls} uses tabs where possible in the output, for efficiency. If
@var{cols} is zero, do not use tabs at all.
@samp{export TABSIZE=4} or @samp{export TABSIZE=0}, or use the
corresponding @option{--tabsize} options.
-@item -w @var{cols}
-@itemx --width=@var{cols}
-@opindex -w
-@opindex --width
+@optItem{ls,-w,@w{ }@var{cols}}
+@optItemx{ls,--width,=@var{cols}}
@vindex COLUMNS
Assume the screen is @var{cols} columns wide. The default is taken
from the terminal settings if possible; otherwise the environment
the length of the output line, and that single output line will
be delimited with spaces, not tabs.
-@item --zero
-@opindex --zero
+@optItem{ls,--zero}
@outputNUL
This option is incompatible with the @option{--dired} (@option{-D}) option.
This option also implies the options @option{--show-control-chars},
The following option changes how file timestamps are printed.
@table @samp
-@item --time-style=@var{style}
-@opindex --time-style
+@optItem{ls,--time-style,=@var{style}}
@cindex time style
List timestamps in style @var{style}. The @var{style} should
be one of the following:
@table @samp
-@item -b
-@itemx --escape
+@optItem{ls,-b}
+@optItemx{ls,--escape}
@itemx --quoting-style=escape
-@opindex -b
-@opindex --escape
@opindex --quoting-style
@cindex backslash sequences for file names
Quote nongraphic characters in file names using alphabetic and octal
backslash sequences like those used in C.
-@item -N
-@itemx --literal
+@optItem{ls,-N}
+@optItemx{ls,--literal}
@itemx --quoting-style=literal
-@opindex -N
-@opindex --literal
@opindex --quoting-style
Do not quote file names. However, with @command{ls} nongraphic
characters are still printed as question marks if the output is a
terminal and you do not specify the @option{--show-control-chars}
option.
-@item -q
-@itemx --hide-control-chars
-@opindex -q
-@opindex --hide-control-chars
+@optItem{ls,-q}
+@optItemx{ls,--hide-control-chars}
Print question marks instead of nongraphic characters in file names.
This is the default if the output is a terminal and the program is
@command{ls}.
-@item -Q
-@itemx --quote-name
+@optItem{ls,-Q}
+@optItemx{ls,--quote-name}
@itemx --quoting-style=c
-@opindex -Q
-@opindex --quote-name
@opindex --quoting-style
Enclose file names in double quotes and quote nongraphic characters as
in C.
-@item --quoting-style=@var{word}
-@opindex --quoting-style
+@optItem{ls,--quoting-style,=@var{word}}
@cindex quoting style
Use style @var{word} to quote file names and other strings that may
contain arbitrary characters. The @var{word} should
variable is not set, the default value is @samp{shell-escape} when the
output is a terminal, and @samp{literal} otherwise.
-@item --show-control-chars
-@opindex --show-control-chars
+@optItem{ls,--show-control-chars}
Print nongraphic characters as-is in file names.
This is the default unless the output is a terminal and the program is
@command{ls}.
The program accepts the following options. Also see @ref{Common options}.
@table @samp
-@item -b
-@itemx --sh
-@itemx --bourne-shell
-@opindex -b
-@opindex --sh
-@opindex --bourne-shell
+@optItem{dircolors,-b}
+@optItemx{dircolors,--sh}
+@optItemx{dircolors,--bourne-shell}
@cindex Bourne shell syntax for color setup
@cindex @command{sh} syntax for color setup
Output Bourne shell commands. This is the default if the @env{SHELL}
environment variable is set and does not end with @samp{csh} or
@samp{tcsh}.
-@item -c
-@itemx --csh
-@itemx --c-shell
-@opindex -c
-@opindex --csh
-@opindex --c-shell
+@optItem{dircolors,-c}
+@optItemx{dircolors,--csh}
+@optItemx{dircolors,--c-shell}
@cindex C shell syntax for color setup
@cindex @command{csh} syntax for color setup
Output C shell commands. This is the default if @code{SHELL} ends with
@command{csh} or @command{tcsh}.
-@item -p
-@itemx --print-database
-@opindex -p
-@opindex --print-database
+@optItem{dircolors,-p}
+@optItemx{dircolors,--print-database}
@cindex color database, printing
@cindex database for color setup, printing
@cindex printing color database
output is itself a valid configuration file, and is fairly descriptive
of the possibilities.
-@item --print-ls-colors
-@opindex --print-ls-colors
+@optItem{dircolors,--print-ls-colors}
@cindex printing ls colors
Print the LS_COLORS entries on separate lines,
each colored as per the color they represent.
The program accepts the following options. Also see @ref{Common options}.
@table @samp
-@item -a
-@itemx --archive
-@opindex -a
-@opindex --archive
+@optItem{cp,-a}
+@optItemx{cp,--archive}
Preserve as much as possible of the structure and attributes of the
original files in the copy (but do not attempt to preserve internal
directory structure; i.e., @samp{ls -U} may list the entries in a copied
but ignore any failure to do that and print no corresponding diagnostic.
Equivalent to @option{-dR --preserve=all} with the reduced diagnostics.
-@item --attributes-only
-@opindex --attributes-only
+@optItem{cp,--attributes-only}
Copy only the specified attributes of the source file to the destination.
If the destination already exists, do not alter its contents.
See the @option{--preserve} option for controlling which attributes to copy.
-@item -b
-@itemx --backup[=@var{method}]
-@opindex -b
-@opindex --backup
-@vindex VERSION_CONTROL
-@cindex backups, making
-@xref{Backup options}.
-Make a backup of each file that would otherwise be overwritten or removed.
-As a special case, @command{cp} makes a backup of @var{source} when the force
-and backup options are given and @var{source} and @var{dest} are the same
-name for an existing, regular file. One useful application of this
-combination of options is this tiny Bourne shell script:
+@optBackup{cp}
+As a special case, @command{cp} makes a backup of @var{source} when the
+@option{force} and @option{backup} options are given and @var{source} and
+@var{dest} are the same name for an existing, regular file. One useful
+application of this combination of options is this tiny Bourne shell script:
@example
#!/bin/sh
exit $fail
@end example
-@item --copy-contents
+@optItem{cp,--copy-contents}
@cindex directories, copying recursively
@cindex copying directories recursively
@cindex recursively copying directories
This option has no effect unless copying recursively, and it does not
affect the copying of symbolic links.
-@item -d
-@opindex -d
+@optItem{cp,-d}
@cindex symbolic links, copying
@cindex hard links, preserving
Copy symbolic links as symbolic links rather than copying the files that
they point to, and preserve hard links between source files in the copies.
Equivalent to @option{--no-dereference --preserve=links}.
-@macro optDebugCopy
-@item --debug
-@opindex --debug
+@macro optDebugCopy{cmd}
+@optItem{\cmd\,--debug}
@cindex debugging, copying
Print extra information to standard output, explaining how files are copied.
This option implies the @option{--verbose} option.
@end macro
-@optDebugCopy
+@optDebugCopy{cp}
-@item -f
-@itemx --force
-@opindex -f
-@opindex --force
+@optItem{cp,-f}
+@optItemx{cp,--force}
When copying without this option and an existing destination file cannot
be opened for writing, the copy fails. However, with @option{--force},
when a destination file cannot be opened, @command{cp} then
This option is ignored when the @option{--no-clobber} or @option{-n} option
is also used.
-@item -H
-@opindex -H
+@optItem{cp,-H}
If a command line argument specifies a symbolic link, then copy the
file it points to rather than the symbolic link itself. However,
copy (preserving its nature) any symbolic link that is encountered
via recursive traversal.
-@item -i
-@itemx --interactive
-@opindex -i
-@opindex --interactive
+@optItem{cp,-i}
+@optItemx{cp,--interactive}
When copying a file other than a directory, prompt whether to
overwrite an existing destination file, and fail if the response
is not affirmative. The @option{-i} option overrides
a previous @option{-n} option.
-@item -l
-@itemx --link
-@opindex -l
-@opindex --link
+@optItem{cp,-l}
+@optItemx{cp,--link}
Make hard links instead of copies of non-directories.
-@item -L
-@itemx --dereference
-@opindex -L
-@opindex --dereference
+@optItem{cp,-L}
+@optItemx{cp,--dereference}
Follow symbolic links when copying from them.
With this option, @command{cp} cannot create a symbolic link.
For example, a symlink (to regular file) in the source tree will be copied to
a regular file in the destination tree.
-@item -n
-@itemx --no-clobber
-@opindex -n
-@opindex --no-clobber
+@optItem{cp,-n}
+@optItemx{cp,--no-clobber}
Do not overwrite an existing file; silently skip instead.
This option overrides a previous @option{-i} option.
This option is mutually exclusive with @option{-b} or @option{--backup} option.
give more control over how to deal with existing files in the destination,
and over the exit status in particular.
-@item -P
-@itemx --no-dereference
-@opindex -P
-@opindex --no-dereference
+@optItem{cp,-P}
+@optItemx{cp,--no-dereference}
@cindex symbolic links, copying
Copy symbolic links as symbolic links rather than copying the files that
they point to. This option affects only symbolic links in the source;
symbolic links in the destination are always followed if possible.
-@item -p
-@itemx --preserve[=@var{attribute_list}]
-@opindex -p
-@opindex --preserve
+@optItem{cp,-p}
+@optItemx{cp,--preserve,[=@var{attribute_list}]}
@cindex file information, preserving, extended attributes, xattr
Preserve the specified attributes of the original files.
If specified, the @var{attribute_list} must be a comma-separated list
file mode.
@xref{File permissions}.
-@item --no-preserve=@var{attribute_list}
+@optItem{cp,--no-preserve,=@var{attribute_list}}
@cindex file information, preserving
Do not preserve the specified attributes. The @var{attribute_list}
has the same form as for @option{--preserve}.
-@item --parents
-@opindex --parents
+@optItem{cp,--parents}
@cindex parent directories and @command{cp}
Form the name of each destination file by appending to the target
directory a slash and the specified name of the source file. The last
copies the file @file{a/b/c} to @file{existing_dir/a/b/c}, creating
any missing intermediate directories.
-@item -R
-@itemx -r
-@itemx --recursive
-@opindex -R
-@opindex -r
-@opindex --recursive
+@optItem{cp,-r}
+@optItemx{cp,-R}
+@optItemx{cp,--recursive}
@cindex directories, copying recursively
@cindex copying directories recursively
@cindex recursively copying directories
unless you also specify @option{-P}, as POSIX allows
implementations that dereference symbolic links by default.
-@item --reflink[=@var{when}]
-@opindex --reflink[=@var{when}]
+@optItem{cp,--reflink,[=@var{when}]}
@cindex COW
@cindex clone
@cindex copy on write
and @option{--attributes-only} options, thus allowing it to be used
to configure the default data copying behavior for @command{cp}.
-@item --remove-destination
-@opindex --remove-destination
+@optItem{cp,--remove-destination}
Remove each existing destination file before attempting to open it
(contrast with @option{-f} above).
-@item --sparse=@var{when}
-@opindex --sparse=@var{when}
+@optItem{cp,--sparse,=@var{when}}
@cindex sparse files, copying
@cindex holes, copying files with
@findex read @r{system call, and holes}
alias cp='cp --sparse=always'
@end example
-@optStripTrailingSlashes
+@optStripTrailingSlashes{cp}
-@item -s
-@itemx --symbolic-link
-@opindex -s
-@opindex --symbolic-link
+@optItem{cp,-s}
+@optItemx{cp,--symbolic-link}
@cindex symbolic links, copying with
Make symbolic links instead of copies of non-directories. All source
file names must be absolute (starting with @samp{/}) unless the
destination files are in the current directory. This option merely
results in an error message on systems that do not support symbolic links.
-@optBackupSuffix
+@optBackupSuffix{cp}
-@optTargetDirectory
+@optTargetDirectory{cp}
-@optNoTargetDirectory
+@optNoTargetDirectory{cp}
-@item -u
-@itemx --update[=@var{which}]
-@opindex -u
-@opindex --update[=@var{which}]
+@optItem{cp,-u}
+@optItemx{cp,--update,[=@var{which}]}
@cindex newer files, copying only
Do not copy a non-directory that has an existing destination with the
same or newer modification timestamp; instead, silently skip the file
@end macro
@whichUpdate
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{cp,-v}
+@optItemx{cp,--verbose}
Print the name of each file before copying it.
-@item -x
-@itemx --one-file-system
-@opindex -x
-@opindex --one-file-system
+@optItem{cp,-x}
+@optItemx{cp,--one-file-system}
@cindex file systems, omitting copying to different
Skip subdirectories that are on different file systems from the one that
the copy started on.
However, mount point directories @emph{are} copied.
-@macro optContext
-@item -Z
-@itemx --context[=@var{context}]
-@opindex -Z
-@opindex --context
+@macro optContext{cmd}
+@optItem{\cmd\,-Z}
+@optItemx{\cmd\,--context,[=@var{context}]}
@cindex SELinux, setting/restoring security context
@cindex security context
Without a specified @var{context}, adjust the SELinux security context according
With a specified context, if both SELinux and SMACK are disabled, a warning is
issued.
@end macro
-@optContext
+@optContext{cp}
This option is mutually exclusive with the @option{--preserve=context}
option, and overrides the @option{--preserve=all} and @option{-a} options.
@table @samp
-@item if=@var{file}
-@opindex if
+@optItem{dd,if,=@var{file}}
Read from @var{file} instead of standard input.
-@item of=@var{file}
-@opindex of
+@optItem{dd,of,=@var{file}}
Write to @var{file} instead of standard output. Unless
@samp{conv=notrunc} is given, truncate @var{file} before writing it.
-@item ibs=@var{bytes}
-@opindex ibs
+@optItem{dd,ibs,=@var{bytes}}
@cindex block size of input
@cindex input block size
Set the input block size to @var{bytes}.
This makes @command{dd} read @var{bytes} per block.
The default is 512 bytes.
-@item obs=@var{bytes}
-@opindex obs
+@optItem{dd,obs,=@var{bytes}}
@cindex block size of output
@cindex output block size
Set the output block size to @var{bytes}.
This makes @command{dd} write @var{bytes} per block.
The default is 512 bytes.
-@item bs=@var{bytes}
-@opindex bs
+@optItem{dd,bs,=@var{bytes}}
@cindex block size
Set both input and output block sizes to @var{bytes}.
This makes @command{dd} read and write @var{bytes} per block,
input is copied to the output as soon as it's read,
even if it is smaller than the block size.
-@item cbs=@var{bytes}
-@opindex cbs
+@optItem{dd,cbs,=@var{bytes}}
@cindex block size of conversion
@cindex conversion block size
@cindex fixed-length records, converting to variable-length
(@option{conv=block}) or the reverse (@option{conv=unblock}),
use @var{bytes} as the fixed record length.
-@item skip=@var{n}
-@itemx iseek=@var{n}
-@opindex skip
-@opindex iseek
+@optItem{dd,skip,=@var{n}}
+@optItemx{dd,iseek,=@var{n}}
Skip @var{n} @samp{ibs}-byte blocks in the input file before copying.
If @var{n} ends in the letter @samp{B}, interpret @var{n}
as a byte count rather than a block count.
(@samp{B} and the @samp{iseek=} spelling are GNU extensions to POSIX.)
-@item seek=@var{n}
-@itemx oseek=@var{n}
-@opindex seek
-@opindex oseek
+@optItem{dd,seek,=@var{n}}
+@optItemx{dd,oseek,=@var{n}}
Skip @var{n} @samp{obs}-byte blocks in the output file before
truncating or copying.
If @var{n} ends in the letter @samp{B}, interpret @var{n}
as a byte count rather than a block count.
(@samp{B} and the @samp{oseek=} spelling are GNU extensions to POSIX.)
-@item count=@var{n}
-@opindex count
+@optItem{dd,count,=@var{n}}
Copy @var{n} @samp{ibs}-byte blocks from the input file, instead
of everything until the end of the file.
If @var{n} ends in the letter @samp{B},
As an extension to POSIX, @samp{count=0} copies zero blocks
instead of copying all blocks.
-@item status=@var{level}
-@opindex status
+@optItem{dd,status,=@var{level}}
Specify the amount of information printed.
If this operand is given multiple times, the last one takes precedence.
The @var{level} value can be one of the following:
The @samp{status=} operand is a GNU extension to POSIX.
-@item conv=@var{conversion}[,@var{conversion}]@dots{}
-@opindex conv
+@optItem{dd,conv,=@var{conversion}[@comma{}@var{conversion}]@dots{}}
Convert the file as specified by the @var{conversion} argument(s).
(No spaces around any comma(s).)
@end table
-@item iflag=@var{flag}[,@var{flag}]@dots{}
-@opindex iflag
+@optItem{dd,iflag,=@var{flag}[@comma{}@var{flag}]@dots{}}
Access the input file using the flags specified by the @var{flag}
argument(s). (No spaces around any comma(s).)
-@item oflag=@var{flag}[,@var{flag}]@dots{}
-@opindex oflag
+@optItem{dd,oflag,=@var{flag}[@comma{}@var{flag}]@dots{}}
Access the output file using the flags specified by the @var{flag}
argument(s). (No spaces around any comma(s).)
@table @samp
-@optBackup
+@optBackup{install}
-@item -C
-@itemx --compare
-@opindex -C
-@opindex --compare
+@optItem{install,-C}
+@optItemx{install,--compare}
Compare content of source and destination files, and if there would be no
change to the destination content, owner, group, permissions, and possibly
SELinux context, then do not modify the destination at all.
This could result in redundant copies or attributes that are not reset to the
correct defaults.
-@item -c
-@opindex -c
+@optItem{install,-c}
Ignored; for compatibility with old Unix versions of @command{install}.
-@item -D
-@opindex -D
+@optItem{install,-D}
Create any missing parent directories of @var{dest},
then copy @var{source} to @var{dest}.
Explicitly specifying the @option{--target-directory=@var{dir}} will similarly
ensure the presence of that hierarchy before copying @var{source} arguments.
-@item -d
-@itemx --directory
-@opindex -d
-@opindex --directory
+@optItem{install,-d}
+@optItemx{install,--directory}
@cindex directories, creating with given attributes
@cindex parent directories, creating missing
@cindex leading directories, creating missing
attributes. Then create each given directory, setting their owner,
group and mode as given on the command line or to the defaults.
-@optDebugCopy
+@optDebugCopy{install}
-@item -g @var{group}
-@itemx --group=@var{group}
-@opindex -g
-@opindex --group
+@optItem{install,-g,@w{ }@var{group}}
+@optItemx{install,--group,=@var{group}}
@cindex group ownership of installed files, setting
Set the group ownership of installed files or directories to
@var{group}. The default is the process's current group. @var{group}
may be either a group name or a numeric group ID.
-@item -m @var{mode}
-@itemx --mode=@var{mode}
-@opindex -m
-@opindex --mode
+@optItem{install,-m,@w{ }@var{mode}}
+@optItemx{install,--mode,=@var{mode}}
@cindex permissions of installed files, setting
Set the file mode bits for the installed file or directory to @var{mode},
which can be either an octal number, or a symbolic mode as in
instead of preserving set-user-ID and set-group-ID on directories.
@xref{Directory Setuid and Setgid}.
-@item -o @var{owner}
-@itemx --owner=@var{owner}
-@opindex -o
-@opindex --owner
+@optItem{install,-o,@w{ }@var{owner}}
+@optItemx{install,--owner,=@var{owner}}
@cindex ownership of installed files, setting
@cindex appropriate privileges
@vindex root @r{as default owner}
is @code{root}. @var{owner} may be either a user name or a numeric user
ID.
-@item --preserve-context
-@opindex --preserve-context
+@optItem{install,--preserve-context}
@cindex SELinux
@cindex security context
Preserve the SELinux security context of files and directories.
will result in an exit status of 1. If SELinux is disabled then
print a warning and ignore the option.
-@item -p
-@itemx --preserve-timestamps
-@opindex -p
-@opindex --preserve-timestamps
+@optItem{install,-p}
+@optItemx{install,--preserve-timestamps}
@cindex timestamps of installed files, preserving
Set the time of last access and the time of last modification of each
installed file to match those of each corresponding original file.
of installed files to keep track of when they were last built as opposed
to when they were last installed.
-@item -s
-@itemx --strip
-@opindex -s
-@opindex --strip
+@optItem{install,-s}
+@optItemx{install,--strip}
@cindex symbol table information, stripping
@cindex stripping symbol table information
Strip the symbol tables from installed binary executables.
-@item --strip-program=@var{program}
-@opindex --strip-program
+@optItem{install,--strip-program,=@var{program}}
@cindex symbol table information, stripping, program
Program used to strip binaries.
-@optBackupSuffix
+@optBackupSuffix{install}
-@optTargetDirectory
+@optTargetDirectory{install}
Also specifying the @option{-D} option will ensure the directory is present.
-@optNoTargetDirectory
+@optNoTargetDirectory{install}
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{install,-v}
+@optItemx{install,--verbose}
Print the name of each file before copying it.
-@optContext
+@optContext{install}
This option is mutually exclusive with the @option{--preserve-context} option.
@table @samp
-@optBackup
+@optBackup{mv}
-@optDebugCopy
+@optDebugCopy{mv}
-@item -f
-@itemx --force
-@opindex -f
-@opindex --force
+@optItem{mv,-f}
+@optItemx{mv,--force}
@cindex prompts, omitting
Do not prompt the user before replacing a destination file.
@macro mvOptsIfn
@end macro
@mvOptsIfn
-@item -i
-@itemx --interactive
-@opindex -i
-@opindex --interactive
+@optItem{mv,-i}
+@optItemx{mv,--interactive}
@cindex prompts, forcing
Prompt whether to overwrite each existing destination file, regardless
of its permissions, and fail if the response is not affirmative.
@mvOptsIfn
-@item -n
-@itemx --no-clobber
-@opindex -n
-@opindex --no-clobber
+@optItem{mv,-n}
+@optItemx{mv,--no-clobber}
@cindex prompts, omitting
Do not overwrite an existing file; silently fail instead.
@mvOptsIfn
See also the @option{--update=none} option which will
skip existing files but not fail.
-@item --no-copy
-@opindex --no-copy
+@optItem{mv,--no-copy}
@cindex renaming files without copying them
If a file cannot be renamed because the destination file system differs,
fail with a diagnostic instead of copying and then removing the file.
-@item --exchange
-@opindex --exchange
+@optItem{mv,--exchange}
Exchange source and destination instead of renaming source to destination.
Both files must exist; they need not be the same type.
This exchanges all data and metadata.
using @code{--no-copy} will prevent future versions of @command{mv}
from implementing the exchange by copying.
-@item -u
-@itemx --update
-@opindex -u
-@opindex --update
+@optItem{mv,-u}
+@optItemx{mv,--update}
@cindex newer files, moving only
Do not move a non-directory that has an existing destination with the
same or newer modification timestamp;
@whichUpdate
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{mv,-v}
+@optItemx{mv,--verbose}
Print the name of each file before moving it.
-@item --keep-directory-symlink
-@opindex --keep-directory-symlink
+@optItem{mv,--keep-directory-symlink}
Follow existing symlinks to directories when copying.
Use this option only when the destination directory's contents are trusted,
as an attacker can place symlinks in the destination
to cause @command{cp} write to arbitrary target directories.
-@optStripTrailingSlashes
+@optStripTrailingSlashes{mv}
-@optBackupSuffix
+@optBackupSuffix{mv}
-@optTargetDirectory
+@optTargetDirectory{mv}
-@optNoTargetDirectory
+@optNoTargetDirectory{mv}
-@item -Z
-@itemx --context
-@opindex -Z
-@opindex --context
+@optItem{mv,-Z}
+@optItemx{mv,--context}
@cindex SELinux, restoring security context
@cindex security context
This option functions similarly to the @command{restorecon} command,
@table @samp
-@item -d
-@itemx --dir
-@opindex -d
-@opindex --dir
+@optItem{rm,-d}
+@optItemx{rm,--dir}
@cindex directories, removing
Remove the listed directories if they are empty.
-@item -f
-@itemx --force
-@opindex -f
-@opindex --force
+@optItem{rm,-f}
+@optItemx{rm,--force}
Ignore nonexistent files and missing operands, and never prompt the user.
Ignore any previous @option{--interactive} (@option{-i}) option.
-@item -i
-@opindex -i
+@optItem{rm,-i}
Prompt whether to remove each file.
If the response is not affirmative, silently skip the file without failing.
Ignore any previous @option{--force} (@option{-f}) option.
Equivalent to @option{--interactive=always}.
-@item -I
-@opindex -I
+@optItem{rm,-I}
Prompt once whether to proceed with the command, if more than three
files are named or if a recursive removal is requested. Ignore any
previous @option{--force} (@option{-f}) option. Equivalent to
@option{--interactive=once}.
-@item --interactive [=@var{when}]
-@opindex --interactive
+@optItem{rm,--interactive,[=@var{when}]}
Specify when to issue an interactive prompt. @var{when} may be
omitted, or one of:
@itemize @bullet
@option{--interactive} with no @var{when} is equivalent to
@option{--interactive=always}.
-@item --one-file-system
-@opindex --one-file-system
+@optItem{rm,--one-file-system}
@cindex one file system, restricting @command{rm} to
When removing a hierarchy recursively, do not remove any directory that is on a
file system different from that of the corresponding command line argument.
See also @option{--preserve-root=all} to protect command line arguments
themselves.
-@item --preserve-root [=all]
-@opindex --preserve-root
+@optItem{rm,--preserve-root,[=all]}
@cindex root directory, disallow recursive destruction
Fail upon any attempt to remove the root directory, @file{/},
when used with the @option{--recursive} option.
When @samp{all} is specified, reject any command line argument
that is not on the same file system as its parent.
-@item --no-preserve-root
-@opindex --no-preserve-root
+@optItem{rm,--no-preserve-root}
@cindex root directory, allow recursive destruction
Do not treat @file{/} specially when removing recursively.
This option is not recommended unless you really want to
remove all the files on your computer.
@xref{Treating / specially}.
-@item -r
-@itemx -R
-@itemx --recursive
-@opindex -r
-@opindex -R
-@opindex --recursive
+@optItem{rm,-r}
+@optItemx{rm,-R}
+@optItemx{rm,--recursive}
@cindex directories, removing (recursively)
Remove the listed directories and their contents recursively.
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{rm,-v}
+@optItemx{rm,--verbose}
Print the name of each file before removing it.
@end table
@table @samp
-@item -f
-@itemx --force
-@opindex -f
-@opindex --force
+@optItem{shred,-f}
+@optItemx{shred,--force}
@cindex force deletion
Override file permissions if necessary to allow overwriting.
-@item -n @var{number}
-@itemx --iterations=@var{number}
-@opindex -n @var{number}
-@opindex --iterations=@var{number}
+@optItem{shred,-n,@w{ }@var{number}}
+@optItemx{shred,--iterations,=@var{number}}
@cindex iterations, selecting the number of
By default, @command{shred} uses @value{SHRED_DEFAULT_PASSES} passes of
overwrite. You can reduce this to save time, or increase it if you think it's
appropriate. After 25 passes all of the internal overwrite patterns will have
been used at least once.
-@item --random-source=@var{file}
-@opindex --random-source
+@optItem{shred,--random-source,=@var{file}}
@cindex random source for shredding
Use @var{file} as a source of random data used to overwrite and to
choose pass ordering. @xref{Random sources}.
-@item -s @var{bytes}
-@itemx --size=@var{bytes}
-@opindex -s @var{bytes}
-@opindex --size=@var{bytes}
+@optItem{shred,-s,@w{ }@var{bytes}}
+@optItemx{shred,--size,=@var{bytes}}
@cindex size of file to shred
Shred the first @var{bytes} bytes of the file. The default is to shred
the whole file. @var{bytes} can be followed by a size specification like
@samp{K}, @samp{M}, or @samp{G} to specify a multiple. @xref{Block size}.
-@item -u
-@itemx --remove[=@var{how}]
-@opindex -u
-@opindex --remove
-@opindex --remove=unlink
-@opindex --remove=wipe
-@opindex --remove=wipesync
+@optItem{shred,-u}
+@optItemx{shred,--remove,[=@var{how}]}
@cindex removing files after shredding
After shredding a file, deallocate it (if possible) and then remove it.
If a file has multiple links, only the named links will be removed.
significant with many files, or is redundant if your file system provides
synchronous metadata updates.
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{shred,-v}
+@optItemx{shred,--verbose}
Display to standard error all status updates as sterilization proceeds.
This details each data and metadata operation as it is performed.
-@item -x
-@itemx --exact
-@opindex -x
-@opindex --exact
+@optItem{shred,-x}
+@optItemx{shred,--exact}
By default, @command{shred} rounds the size of a regular file up to the next
multiple of the file system block size to fully erase the slack space in
the last block of the file. This space may contain portions of the current
blocks, the resulting file will be 512 bytes long. With this option,
shred does not increase the apparent size of the file.
-@item -z
-@itemx --zero
-@opindex -z
-@opindex --zero
+@optItem{shred,-z}
+@optItemx{shred,--zero}
Normally, the last pass that @command{shred} writes is made up of
random data. If this would be conspicuous on your storage device (for
example, because it looks like encrypted data), or you just think
@table @samp
-@optBackup
+@optBackup{ln}
-@item -d
-@itemx -F
-@itemx --directory
-@opindex -d
-@opindex -F
-@opindex --directory
+@optItem{ln,-d}
+@optItemx{ln,-F}
+@optItemx{ln,--directory}
@cindex hard links to directories
Allow users with appropriate privileges to attempt to make hard links
to directories.
However, this will probably fail due to
system restrictions, even for the super-user.
-@item -f
-@itemx --force
-@opindex -f
-@opindex --force
+@optItem{ln,-f}
+@optItemx{ln,--force}
Remove existing destination files.
-@item -i
-@itemx --interactive
-@opindex -i
-@opindex --interactive
+@optItem{ln,-i}
+@optItemx{ln,--interactive}
@cindex prompting, and @command{ln}
Prompt whether to remove existing destination files,
and fail if the response is not affirmative.
-@item -L
-@itemx --logical
-@opindex -L
-@opindex --logical
+@optItem{ln,-L}
+@optItemx{ln,--logical}
If @option{-s} is not in effect, and the source file is a symbolic
link, create the hard link to the file referred to by the symbolic
link, rather than the symbolic link itself.
-@item -n
-@itemx --no-dereference
-@opindex -n
-@opindex --no-dereference
+@optItem{ln,-n}
+@optItemx{ln,--no-dereference}
Do not treat the last operand specially when it is a symbolic link to
a directory. Instead, treat it as if it were a normal file.
This option is weaker than the @option{--no-target-directory}
(@option{-T}) option, so it has no effect if both options are given.
-@item -P
-@itemx --physical
-@opindex -P
-@opindex --physical
+@optItem{ln,-P}
+@optItemx{ln,--physical}
If @option{-s} is not in effect, and the source file is a symbolic
link, create the hard link to the symbolic link itself. On platforms
where this is not supported by the kernel, this option creates a
cannot be edited, any file name resolution performed through either
link will be the same as if a hard link had been created.
-@item -r
-@itemx --relative
-@opindex -r
-@opindex --relative
+@optItem{ln,-r}
+@optItemx{ln,--relative}
Make symbolic links relative to the link location.
This option is only valid with the @option{--symbolic} option.
@end verbatim
@end example
-@item -s
-@itemx --symbolic
-@opindex -s
-@opindex --symbolic
+@optItem{ln,-s}
+@optItemx{ln,--symbolic}
Make symbolic links instead of hard links. This option merely produces
an error message on systems that do not support symbolic links.
-@optBackupSuffix
+@optBackupSuffix{ln}
-@optTargetDirectory
+@optTargetDirectory{ln}
-@optNoTargetDirectory
+@optNoTargetDirectory{ln}
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{ln,-v}
+@optItemx{ln,--verbose}
Print the name of each file after linking it successfully.
@end table
@table @samp
-@item -m @var{mode}
-@itemx --mode=@var{mode}
-@opindex -m
-@opindex --mode
+@optItem{mkdir,-m,@w{ }@var{mode}}
+@optItemx{mkdir,--mode,=@var{mode}}
@cindex modes of created directories, setting
Set the file permission bits of created directories to @var{mode},
which uses the same syntax as
set-user-ID and set-group-ID bits of directories are inherited unless
overridden in this way.
-@item -p
-@itemx --parents
-@opindex -p
-@opindex --parents
+@optItem{mkdir,-p}
+@optItemx{mkdir,--parents}
@cindex parent directories, creating
Make any missing parent directories for each argument, setting their
file permission bits to @samp{=rwx,u+wx},
Setgid}, for how the set-user-ID and set-group-ID bits of
newly-created parent directories are inherited.
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{mkdir,-v}
+@optItemx{mkdir,--verbose}
Print a message for each created directory. This is most useful with
@option{--parents}.
-@optContext
+@optContext{mkdir}
@end table
@table @samp
-@item -m @var{mode}
-@itemx --mode=@var{mode}
-@opindex -m
-@opindex --mode
+@optItem{mkfifo,-m,@w{ }@var{mode}}
+@optItemx{mkfifo,--mode,=@var{mode}}
@cindex modes of created FIFOs, setting
Set the mode of created FIFOs to @var{mode}, which is symbolic as in
@command{chmod} and uses @samp{a=rw} (read and write allowed for everyone)
for the point of departure. @var{mode} should specify only file
permission bits. @xref{File permissions}.
-@optContext
+@optContext{mkfifo}
@end table
@table @samp
-@item -m @var{mode}
-@itemx --mode=@var{mode}
-@opindex -m
-@opindex --mode
+@optItem{mknod,-m,@w{ }@var{mode}}
+@optItemx{mknod,--mode,=@var{mode}}
Set the mode of created files to @var{mode}, which is symbolic as in
@command{chmod} and uses @samp{a=rw} as the point of departure.
@var{mode} should specify only file permission bits.
@xref{File permissions}.
-@optContext
+@optContext{mknod}
@end table
@table @samp
-@item -f
-@itemx --canonicalize
-@opindex -f
-@opindex --canonicalize
+@optItem{readlink,-f}
+@optItemx{readlink,--canonicalize}
Activate canonicalize mode.
If any component of the file name except the last one is missing or unavailable,
@command{readlink} produces no output and exits with a nonzero exit
code. A trailing slash is ignored.
-@item -e
-@itemx --canonicalize-existing
-@opindex -e
-@opindex --canonicalize-existing
+@optItem{readlink,-e}
+@optItemx{readlink,--canonicalize-existing}
Activate canonicalize mode.
If any component is missing or unavailable, @command{readlink} produces
no output and exits with a nonzero exit code. A trailing slash
requires that the name resolve to a directory.
-@item -m
-@itemx --canonicalize-missing
-@opindex -m
-@opindex --canonicalize-missing
+@optItem{readlink,-m}
+@optItemx{readlink,--canonicalize-missing}
Activate canonicalize mode.
If any component is missing or unavailable, @command{readlink} treats it
as a directory.
-@item -n
-@itemx --no-newline
-@opindex -n
-@opindex --no-newline
+@optItem{readlink,-n}
+@optItemx{readlink,--no-newline}
Do not print the output delimiter, when a single @var{file} is specified.
Print a warning if specified along with multiple @var{file}s.
-@item -s
-@itemx -q
-@itemx --silent
-@itemx --quiet
-@opindex -s
-@opindex -q
-@opindex --silent
-@opindex --quiet
+@optItem{readlink,-s}
+@optItemx{readlink,-q}
+@optItemx{readlink,--silent}
+@optItemx{readlink,--quiet}
Suppress most error messages.
@vindex POSIXLY_CORRECT
This option is on by default if the @env{POSIXLY_CORRECT} environment
variable is not set.
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{readlink,-v}
+@optItemx{readlink,--verbose}
Report error messages.
@vindex POSIXLY_CORRECT
This option is on by default if the @env{POSIXLY_CORRECT} environment
variable is set.
-@optZero
+@optZero{readlink}
@end table
@table @samp
-@item --ignore-fail-on-non-empty
-@opindex --ignore-fail-on-non-empty
+@optItem{rmdir,--ignore-fail-on-non-empty}
@cindex directory deletion, ignoring failures
Ignore each failure to remove a directory that is non-empty.
-@item -p
-@itemx --parents
-@opindex -p
-@opindex --parents
+@optItem{rmdir,-p}
+@optItemx{rmdir,--parents}
@cindex parent directories, removing
Remove @var{directory}, then try to remove each component of @var{directory}.
So, for example, @samp{rmdir -p a/b/c} is similar to @samp{rmdir a/b/c a/b a}.
a failure does not evoke a diagnostic and does not cause @command{rmdir} to
exit unsuccessfully.
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{rmdir,-v}
+@optItemx{rmdir,--verbose}
@cindex directory deletion, reporting
Give a diagnostic for each successful removal.
@var{directory} is removed.
@table @samp
-@item -c
-@itemx --changes
-@opindex -c
-@opindex --changes
+@optItem{chown,-c}
+@optItemx{chown,--changes}
@cindex changed owners, verbosely describing
Verbosely describe the action for each @var{file} whose ownership
actually changes.
-@item -f
-@itemx --silent
-@itemx --quiet
-@opindex -f
-@opindex --silent
-@opindex --quiet
+@optItem{chown,-f}
+@optItemx{chown,--silent}
+@optItemx{chown,--quiet}
@cindex error messages, omitting
Do not print error messages about files whose ownership cannot be
changed.
@macro chownFromOption{cmd}
-@item --from=@var{old-owner}
-@opindex --from
+@optItem{\cmd\,--from,=@var{old-owner}}
@cindex symbolic links, changing owner
Change a @var{file}'s ownership only if it has current attributes specified
by @var{old-owner}. @var{old-owner} has the same form as @var{new-owner}
@end macro
@chownFromOption{chown}
-@macro symlinkRefOpts
-@item --dereference
-@opindex --dereference
+@macro symlinkRefOpts{cmd}
+@optItem{\cmd\,--dereference}
@cindex symbolic links, changing owner, group
@findex lchown
Do not act on symbolic links themselves but rather on what they point to.
On systems that do not provide the @code{lchown} system call,
no diagnostic is issued, but see @option{--verbose}.
@end macro
-@symlinkRefOpts
+@symlinkRefOpts{chown}
-@item --preserve-root
-@opindex --preserve-root
+@optItem{chown,--preserve-root}
@cindex root directory, disallow recursive modification
Fail upon any attempt to recursively change the root directory, @file{/}.
Without @option{--recursive}, this option has no effect.
@xref{Treating / specially}.
-@item --no-preserve-root
-@opindex --no-preserve-root
+@optItem{chown,--no-preserve-root}
@cindex root directory, allow recursive modification
Cancel the effect of any preceding @option{--preserve-root} option.
@xref{Treating / specially}.
-@item --reference=@var{ref_file}
-@opindex --reference
+@optItem{chown,--reference,=@var{ref_file}}
Change the user and group of each @var{file} to be the same as those of
@var{ref_file}. If @var{ref_file} is a symbolic link, do not use the
user and group of the symbolic link, but rather those of the file it
refers to.
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{chown,-v}
+@optItemx{chown,--verbose}
Output a diagnostic for every file processed.
If a symbolic link is encountered during a recursive traversal
on a system without the @code{lchown} system call, and @option{--no-dereference}
is in effect, then issue a diagnostic saying neither the symbolic link nor
its referent is being changed.
-@item -R
-@itemx --recursive
-@opindex -R
-@opindex --recursive
+@optItem{chown,-R}
+@optItemx{chown,--recursive}
@cindex recursively changing file ownership
Recursively change ownership of directories and their contents.
-@choptH
+@choptH{chown}
@xref{Traversing symlinks}.
-@choptL
+@choptL{chown}
@warnOptDerefWithRec
@xref{Traversing symlinks}.
-@choptP
+@choptP{chown}
@choptDefault
@xref{Traversing symlinks}.
@table @samp
-@item -c
-@itemx --changes
-@opindex -c
-@opindex --changes
+@optItem{chgrp,-c}
+@optItemx{chgrp,--changes}
@cindex changed files, verbosely describing
Verbosely describe the action for each @var{file} whose group actually
changes.
-@item -f
-@itemx --silent
-@itemx --quiet
-@opindex -f
-@opindex --silent
-@opindex --quiet
+@optItem{chgrp,-f}
+@optItemx{chgrp,--silent}
+@optItemx{chgrp,--quiet}
@cindex error messages, omitting
Do not print error messages about files whose group cannot be
changed.
@chownFromOption{chgrp}
-@symlinkRefOpts
+@symlinkRefOpts{chgrp}
-@item --preserve-root
-@opindex --preserve-root
+@optItem{chgrp,--preserve-root}
@cindex root directory, disallow recursive modification
Fail upon any attempt to recursively change the root directory, @file{/}.
Without @option{--recursive}, this option has no effect.
@xref{Treating / specially}.
-@item --no-preserve-root
-@opindex --no-preserve-root
+@optItem{chgrp,--no-preserve-root}
@cindex root directory, allow recursive modification
Cancel the effect of any preceding @option{--preserve-root} option.
@xref{Treating / specially}.
-@item --reference=@var{ref_file}
-@opindex --reference
+@optItem{chgrp,--reference,=@var{ref_file}}
Change the group of each @var{file} to be the same as that of
@var{ref_file}. If @var{ref_file} is a symbolic link, do not use the
group of the symbolic link, but rather that of the file it refers to.
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{chgrp,-v}
+@optItemx{chgrp,--verbose}
Output a diagnostic for every file processed.
If a symbolic link is encountered during a recursive traversal
on a system without the @code{lchown} system call, and @option{--no-dereference}
is in effect, then issue a diagnostic saying neither the symbolic link nor
its referent is being changed.
-@item -R
-@itemx --recursive
-@opindex -R
-@opindex --recursive
+@optItem{chgrp,-R}
+@optItemx{chgrp,--recursive}
@cindex recursively changing group ownership
Recursively change the group ownership of directories and their contents.
-@choptH
+@choptH{chgrp}
@xref{Traversing symlinks}.
-@choptL
+@choptL{chgrp}
@warnOptDerefWithRec
@xref{Traversing symlinks}.
-@choptP
+@choptP{chgrp}
@choptDefault
@xref{Traversing symlinks}.
@table @samp
-@item -c
-@itemx --changes
-@opindex -c
-@opindex --changes
+@optItem{chmod,-c}
+@optItemx{chmod,--changes}
Verbosely describe the action for each @var{file} whose permissions
actually change.
-@item --dereference
-@opindex --dereference
+@optItem{chmod,--dereference}
@cindex symbolic links, changing mode
Do not act on symbolic links themselves but rather on what they point to.
This is the default for command line arguments, but not for
symbolic links encountered when recursing.
@warnOptDerefWithRec
-@item -h
-@itemx --no-dereference
-@opindex -h
-@opindex --no-dereference
+@optItem{chmod,-h}
+@optItemx{chmod,--no-dereference}
@cindex symbolic links, changing mode
Act on symbolic links themselves instead of what they point to.
On systems that do not support this, no diagnostic is issued,
but see @option{--verbose}.
-@item -f
-@itemx --silent
-@itemx --quiet
-@opindex -f
-@opindex --silent
-@opindex --quiet
+@optItem{chmod,-f}
+@optItemx{chmod,--silent}
+@optItemx{chmod,--quiet}
@cindex error messages, omitting
Do not print error messages about files whose permissions cannot be
changed.
-@item --preserve-root
-@opindex --preserve-root
+@optItem{chmod,--preserve-root}
@cindex root directory, disallow recursive modification
Fail upon any attempt to recursively change the root directory, @file{/}.
Without @option{--recursive}, this option has no effect.
@xref{Treating / specially}.
-@item --no-preserve-root
-@opindex --no-preserve-root
+@optItem{chmod,--no-preserve-root}
@cindex root directory, allow recursive modification
Cancel the effect of any preceding @option{--preserve-root} option.
@xref{Treating / specially}.
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{chmod,-v}
+@optItemx{chmod,--verbose}
Verbosely describe the action or non-action taken for every @var{file}.
-@item --reference=@var{ref_file}
-@opindex --reference
+@optItem{chmod,--reference,=@var{ref_file}}
Change the mode of each @var{file} to be the same as that of @var{ref_file}.
@xref{File permissions}.
If @var{ref_file} is a symbolic link, do not use the mode
of the symbolic link, but rather that of the file it refers to.
-@item -R
-@itemx --recursive
-@opindex -R
-@opindex --recursive
+@optItem{chmod,-R}
+@optItemx{chmod,--recursive}
@cindex recursively changing access permissions
Recursively change permissions of directories and their contents.
-@choptH
+@choptH{chmod}
@choptDefault
@xref{Traversing symlinks}.
-@choptL
+@choptL{chmod}
@warnOptDerefWithRec
@xref{Traversing symlinks}.
-@choptP
+@choptP{chmod}
@xref{Traversing symlinks}.
@end table
@table @samp
-@item -a
-@itemx --time=atime
+@optItem{touch,-a}
+@optItemx{touch,--time,=atime}
@itemx --time=access
@itemx --time=use
-@opindex -a
-@opindex --time
@opindex atime@r{, changing}
@opindex access @r{time, changing}
@opindex use @r{time, changing}
Change the access timestamp only. @xref{File timestamps}.
-@item -c
-@itemx --no-create
-@opindex -c
-@opindex --no-create
+@optItem{touch,-c}
+@optItemx{touch,--no-create}
Do not warn about or create files that do not exist.
-@item -d @var{time}
-@itemx --date=@var{time}
-@opindex -d
-@opindex --date
+@optItem{touch,-d,@w{ }@var{time}}
+@optItemx{touch,--date,=@var{time}}
@opindex time
Use @var{time} instead of the current time. It can contain month names,
time zones, @samp{am} and @samp{pm}, @samp{yesterday}, etc. For
File systems that do not support high-resolution timestamps
silently ignore any excess precision here.
-@item -f
-@opindex -f
+@optItem{touch,-f}
@cindex BSD @command{touch} compatibility
Ignored; for compatibility with BSD versions of @command{touch}.
-@item -h
-@itemx --no-dereference
-@opindex -h
-@opindex --no-dereference
+@optItem{touch,-h}
+@optItemx{touch,--no-dereference}
@cindex symbolic links, changing time
@findex lutimes
Attempt to change the timestamps of a symbolic link, rather than what
reference timestamp is taken from a symbolic link rather than the file
it refers to.
-@item -m
+@optItem{touch,-m}
@itemx --time=mtime
@itemx --time=modify
-@opindex -m
@opindex --time
@opindex mtime@r{, changing}
@opindex modify @r{time, changing}
Change the modification timestamp only.
-@item -r @var{file}
-@itemx --reference=@var{file}
-@opindex -r
-@opindex --reference
+@optItem{touch,-r,@w{ }@var{file}}
+@optItemx{touch,--reference,=@var{file}}
Use the times of the reference @var{file} instead of the current time.
If this option is combined with the @option{--date=@var{time}}
(@option{-d @var{time}}) option, the reference @var{file}'s time is
If @var{file} is a symbolic link, the reference timestamp is taken
from the target of the symlink, unless @option{-h} was also in effect.
-@item -t [[@var{cc}]@var{yy}]@var{mmddhhmm}[.@var{ss}]
+@optItem{touch,-t,@w{ }[[@var{cc}]@var{yy}]@var{mmddhhmm}[.@var{ss}]}
@cindex leap seconds
Use the argument (optional four-digit or two-digit years, months,
days, hours, minutes, optional seconds) instead of the current time.
@table @samp
-@item -a
-@itemx --all
-@opindex -a
-@opindex --all
+@optItem{df,-a}
+@optItemx{df,--all}
@cindex ignore file systems
Include in the listing dummy, duplicate, or inaccessible file systems, which
are omitted by default. Dummy file systems are typically special purpose
over-mounted by another file system at that point, or otherwise inaccessible
due to permissions of the mount point etc.
-@item -B @var{size}
-@itemx --block-size=@var{size}
-@opindex -B
-@opindex --block-size
+@optItem{df,-B,@w{ }@var{size}}
+@optItemx{df,--block-size,=@var{size}}
@cindex file system sizes
Scale sizes by @var{size} before printing them (@pxref{Block size}).
For example, @option{-BG} prints sizes in units of 1,073,741,824 bytes.
-@optHumanReadable
+@optHumanReadable{df}
-@item -H
-@opindex -H
+@optItem{df,-H}
Equivalent to @option{--si}.
-@item -i
-@itemx --inodes
-@opindex -i
-@opindex --inodes
+@optItem{df,-i}
+@optItemx{df,--inodes}
@cindex inode usage
List inode usage information instead of block usage. An inode (short
for index node) contains information about a file such as its owner,
permissions, timestamps, and location on the file system.
-@item -k
-@opindex -k
+@optItem{df,-k}
@cindex kibibytes for file system sizes
Print sizes in 1024-byte blocks, overriding the default block size
(@pxref{Block size}).
This option is equivalent to @option{--block-size=1K}.
-@item -l
-@itemx --local
-@opindex -l
-@opindex --local
+@optItem{df,-l}
+@optItemx{df,--local}
@cindex file system types, limiting output to certain
Limit the listing to local file systems. By default, remote file systems
are also listed.
-@item --no-sync
-@opindex --no-sync
+@optItem{df,--no-sync}
@cindex file system space, retrieving old data more quickly
Do not invoke the @code{sync} system call before getting any usage data.
This may make @command{df} run significantly faster on systems with many
file systems, but on some systems (notably Solaris) the results may be slightly
out of date. This is the default.
-@item --output
-@itemx --output[=@var{field_list}]
-@opindex --output
+@optItem{df,--output,[=@var{field_list}]}
Use the output format defined by @var{field_list}, or print all fields if
@var{field_list} is omitted. In the latter case, the order of the columns
conforms to the order of the field descriptions below.
@end example
-@item -P
-@itemx --portability
-@opindex -P
-@opindex --portability
+@optItem{df,-P}
+@optItemx{df,--portability}
@cindex one-line output format
@cindex POSIX output format
@cindex portable output format
otherwise. @xref{Block size}.
@end enumerate
-@optSi
+@optSi{df}
-@item --sync
-@opindex --sync
+@optItem{df,--sync}
@cindex file system space, retrieving current data more slowly
Invoke the @code{sync} system call before getting any usage data. On
some systems (notably Solaris), doing this yields more up to date results,
but in general this option makes @command{df} much slower, especially when
there are many or very busy file systems.
-@item --total
-@opindex --total
+@optItem{df,--total}
@cindex grand total of file system size, usage and available space
Print a grand total of all arguments after all arguments have
been processed. This can be used to find out the total size, usage
@command{df} prints @samp{total} into the @var{target} column,
if present.
-@item -t @var{fstype}
-@itemx --type=@var{fstype}
-@opindex -t
-@opindex --type
+@optItem{df,-t,@w{ }@var{fstype}}
+@optItemx{df,--type,=@var{fstype}}
@cindex file system types, limiting output to certain
Limit the listing to file systems of type @var{fstype}. Multiple
file system types can be specified by giving multiple @option{-t} options.
By default, nothing is omitted.
-@item -T
-@itemx --print-type
-@opindex -T
-@opindex --print-type
+@optItem{df,-T}
+@optItemx{df,--print-type}
@cindex file system types, printing
Print each file system's type. The types printed here are the same ones
you can include or exclude with @option{-t} and @option{-x}. The particular
@end table
-@item -x @var{fstype}
-@itemx --exclude-type=@var{fstype}
-@opindex -x
-@opindex --exclude-type
+@optItem{df,-x,@w{ }@var{fstype}}
+@optItemx{df,--exclude-type,=@var{fstype}}
Limit the listing to file systems not of type @var{fstype}.
Multiple file system types can be eliminated by giving multiple
@option{-x} options. By default, no file system types are omitted.
-@item -v
+@optItem{df,-v}
Ignored; for compatibility with System V versions of @command{df}.
@end table
@table @samp
-@optNull
+@optNull{du}
-@item -a
-@itemx --all
-@opindex -a
-@opindex --all
+@optItem{du,-a}
+@optItemx{du,--all}
Show counts for all files, not just directories.
-@item -A
-@itemx --apparent-size
-@opindex -A
-@opindex --apparent-size
+@optItem{du,-A}
+@optItemx{du,--apparent-size}
Print apparent sizes, rather than file system usage. The apparent size of a
file is the number of bytes reported by @code{wc -c} on regular files,
or more generally, @code{ls -l --block-size=1} or @code{stat --format=%s}.
Apparent sizes are meaningful only for regular files and symbolic links.
Other file types do not contribute to apparent size.
-@item -B @var{size}
-@itemx --block-size=@var{size}
-@opindex -B
-@opindex --block-size
+@optItem{du,-B,@w{ }@var{size}}
+@optItemx{du,--block-size,=@var{size}}
@cindex file sizes
Scale sizes by @var{size} before printing them (@pxref{Block size}).
For example, @option{-BG} prints sizes in units of 1,073,741,824 bytes.
-@item -b
-@itemx --bytes
-@opindex -b
-@opindex --bytes
+@optItem{du,-b}
+@optItemx{du,--bytes}
Equivalent to @code{--apparent-size --block-size=1}.
-@item -c
-@itemx --total
-@opindex -c
-@opindex --total
+@optItem{du,-c}
+@optItemx{du,--total}
@cindex grand total of file system space
Print a grand total of all arguments after all arguments have
been processed. This can be used to find out the total file system usage of
a given set of files or directories.
-@item -D
-@itemx --dereference-args
-@opindex -D
-@opindex --dereference-args
+@optItem{du,-D}
+@optItemx{du,--dereference-args}
Dereference symbolic links that are command line arguments.
Does not affect other symbolic links. This is helpful for finding
out the file system usage of directories, such as @file{/usr/tmp}, which
are often symbolic links.
-@item -d @var{depth}
-@itemx --max-depth=@var{depth}
-@opindex -d @var{depth}
-@opindex --max-depth=@var{depth}
+@optItem{du,-d,@w{ }@var{depth}}
+@optItemx{du,--max-depth,=@var{depth}}
@cindex limiting output of @command{du}
Show the total for each directory (and file if @option{--all}) that is at
most MAX_DEPTH levels down from the root of the hierarchy. The root
@c --files0-from=FILE
@filesZeroFromOption{du,, with the @option{--total} (@option{-c}) option}
-@item -H
-@opindex -H
+@optItem{du,-H}
Equivalent to @option{--dereference-args} (@option{-D}).
-@optHumanReadable
+@optHumanReadable{du}
-@item --inodes
-@opindex --inodes
+@optItem{du,--inodes}
@cindex inode usage, dereferencing in @command{du}
List inode usage information instead of block usage.
This option is useful for finding directories which contain many files, and
@option{-x}; however, passing other options regarding the block size, for
example @option{-b}, @option{-m} and @option{--apparent-size}, is ignored.
-@item -k
-@opindex -k
+@optItem{du,-k}
@cindex kibibytes for file sizes
Print sizes in 1024-byte blocks, overriding the default block size
(@pxref{Block size}).
This option is equivalent to @option{--block-size=1K}.
-@item -L
-@itemx --dereference
-@opindex -L
-@opindex --dereference
+@optItem{du,-L}
+@optItemx{du,--dereference}
@cindex symbolic links, dereferencing in @command{du}
Dereference symbolic links (show the file system space used by the file
or directory that the link points to instead of the space used by
the link).
-@item -l
-@itemx --count-links
-@opindex -l
-@opindex --count-links
+@optItem{du,-l}
+@optItemx{du,--count-links}
@cindex hard links, counting in @command{du}
Count the size of all files, even if they have appeared already (as a
hard link).
-@item -m
-@opindex -m
+@optItem{du,-m}
@cindex mebibytes for file sizes
Print sizes in 1,048,576-byte blocks, overriding the default block size
(@pxref{Block size}).
This option is equivalent to @option{--block-size=1M}.
-@item -P
-@itemx --no-dereference
-@opindex -P
-@opindex --no-dereference
+@optItem{du,-P}
+@optItemx{du,--no-dereference}
@cindex symbolic links, dereferencing in @command{du}
For each symbolic link encountered by @command{du},
consider the file system space used by the symbolic link itself.
-@item -S
-@itemx --separate-dirs
-@opindex -S
-@opindex --separate-dirs
+@optItem{du,-S}
+@optItemx{du,--separate-dirs}
Normally, in the output of @command{du} (when not using @option{--summarize}),
the size listed next to a directory name, @var{d}, represents the sum
of sizes of all entries beneath @var{d} as well as the size of @var{d} itself.
With @option{--separate-dirs}, the size reported for a directory name,
@var{d}, will exclude the size of any subdirectories.
-@optSi
+@optSi{du}
-@item -s
-@itemx --summarize
-@opindex -s
-@opindex --summarize
+@optItem{du,-s}
+@optItemx{du,--summarize}
Display only a total for each argument.
-@item -t @var{size}
-@itemx --threshold=@var{size}
-@opindex -t
-@opindex --threshold
+@optItem{du,-t,@w{ }@var{size}}
+@optItemx{du,--threshold,=@var{size}}
Exclude entries based on a given @var{size}. The @var{size} refers to used
blocks in normal mode (@pxref{Block size}), or inodes count in conjunction
with the @option{--inodes} option.
@end example
-@item --time
-@opindex --time
+@optItem{du,--time}
@cindex last modified dates, displaying in @command{du}
Show the most recent modification timestamp (mtime) of any file in the
directory, or any of its subdirectories. @xref{File timestamps}.
Show the most recent access timestamp (atime) of any file in the
directory, or any of its subdirectories. @xref{File timestamps}.
-@item --time-style=@var{style}
-@opindex --time-style
+@optItem{du,--time-style,=@var{style}}
@cindex time style
List timestamps in style @var{style}. This option has an effect only if
the @option{--time} option is also specified. The @var{style} should
begins with @samp{posix-} the @samp{posix-} is ignored; and if
@env{TIME_STYLE} is @samp{locale} it is ignored.
-@item -X @var{file}
-@itemx --exclude-from=@var{file}
-@opindex -X @var{file}
-@opindex --exclude-from=@var{file}
+@optItem{du,-X,@w{ }@var{file}}
+@optItemx{du,--exclude-from,=@var{file}}
@cindex excluding files from @command{du}
Like @option{--exclude}, except take the patterns to exclude from @var{file},
one per line. If @var{file} is @samp{-}, take the patterns from standard
input.
-@item --exclude=@var{pattern}
-@opindex --exclude=@var{pattern}
+@optItem{du,--exclude,=@var{pattern}}
@cindex excluding files from @command{du}
When recursing, skip subdirectories or files matching @var{pattern}.
For example, @code{du --exclude='*.o'} excludes files whose names
end in @samp{.o}.
-@item -x
-@itemx --one-file-system
-@opindex -x
-@opindex --one-file-system
+@optItem{du,-x}
+@optItemx{du,--one-file-system}
@cindex one file system, restricting @command{du} to
Skip directories that are on different file systems from the one that
the argument being processed is on.
@table @samp
-@item -L
-@itemx --dereference
-@opindex -L
-@opindex --dereference
+@optItem{stat,-L}
+@optItemx{stat,--dereference}
@cindex symbolic links, dereferencing in @command{stat}
Change how @command{stat} treats symbolic links.
With this option, @command{stat} acts on the file referenced
by each symbolic link argument.
Without it, @command{stat} acts on any symbolic link argument directly.
-@item -f
-@itemx --file-system
-@opindex -f
-@opindex --file-system
+@optItem{stat,-f}
+@optItemx{stat,--file-system}
@cindex file systems
Report information about the file systems where the given files are located
instead of information about the files themselves.
This option implies the @option{-L} option.
-@item --cached=@var{mode}
-@opindex --cached=@var{mode}
+@optItem{stat,--cached,=@var{mode}}
@cindex attribute caching
Control how attributes are read from the file system;
if supported by the system. This allows one to
@end table
-@item -c
-@itemx --format=@var{format}
-@opindex -c
-@opindex --format=@var{format}
+@optItem{stat,-c}
+@optItemx{stat,--format,=@var{format}}
@cindex output format
Use @var{format} rather than the default format.
@var{format} is automatically newline-terminated, so
2057:2
@end example
-@item --printf=@var{format}
-@opindex --printf=@var{format}
+@optItem{stat,--printf,=@var{format}}
@cindex output format
Use @var{format} rather than the default format.
Like @option{--format}, but interpret backslash escapes,
2057:2
@end example
-@item -t
-@itemx --terse
-@opindex -t
-@opindex --terse
+@optItem{stat,-t}
+@optItemx{stat,--terse}
@cindex terse output
Print the information in terse form, suitable for parsing by other programs.
@ref{Common options}.
@table @samp
-@item -d
-@itemx --data
-@opindex --data
+@optItem{sync,-d}
+@optItemx{sync,--data}
Use fdatasync(2) to sync only the data for the file,
and any metadata required to maintain file system consistency.
-@item -f
-@itemx --file-system
-@opindex --file-system
+@optItem{sync,-f}
+@optItemx{sync,--file-system}
Synchronize all the I/O waiting for the file systems that contain the file,
using the syscall syncfs(2). You would usually @emph{not} specify
this option if passing a device node like @samp{/dev/sda} for example,
@table @samp
-@item -c
-@itemx --no-create
-@opindex -c
-@opindex --no-create
+@optItem{truncate,-c}
+@optItemx{truncate,--no-create}
Do not create files that do not exist.
-@item -o
-@itemx --io-blocks
-@opindex -o
-@opindex --io-blocks
+@optItem{truncate,-o}
+@optItemx{truncate,--io-blocks}
Treat @var{size} as number of I/O blocks of the @var{file} rather than bytes.
-@item -r @var{rfile}
-@itemx --reference=@var{rfile}
-@opindex -r
-@opindex --reference
+@optItem{truncate,-r,@w{ }@var{rfile}}
+@optItemx{truncate,--reference,=@var{rfile}}
Base the size of each @var{file} on the size of @var{rfile}.
-@item -s @var{size}
-@itemx --size=@var{size}
-@opindex -s
-@opindex --size
+@optItem{truncate,-s,@w{ }@var{size}}
+@optItemx{truncate,--size,=@var{size}}
Set or adjust the size of each @var{file} according to @var{size}.
@var{size} is in bytes unless @option{--io-blocks} is specified.
@multiplierSuffixesNoBlocks{size}
@var{string}.
@table @samp
-@item -n
-@opindex -n
+@optItem{echo,-n}
Do not output the trailing newline.
-@item -e
-@opindex -e
+@optItem{echo,-e}
@cindex backslash escapes
Enable interpretation of the following backslash-escaped characters in
each @var{string}:
(one or two hexadecimal digits)
@end table
-@item -E
-@opindex -E
+@optItem{echo,-E}
@cindex backslash escapes
Disable interpretation of backslash escapes in each @var{string}.
This is the default. If @option{-e} and @option{-E} are both
@table @samp
-@item -b @var{file}
-@opindex -b
+@optItem{test,-b,@w{ }@var{file}}
@cindex block special check
True if @var{file} exists and is a block special device.
-@item -c @var{file}
-@opindex -c
+@optItem{test,-c,@w{ }@var{file}}
@cindex character special check
True if @var{file} exists and is a character special device.
-@item -d @var{file}
-@opindex -d
+@optItem{test,-d,@w{ }@var{file}}
@cindex directory check
True if @var{file} exists and is a directory.
-@item -f @var{file}
-@opindex -f
+@optItem{test,-f,@w{ }@var{file}}
@cindex regular file check
True if @var{file} exists and is a regular file.
-@item -h @var{file}
-@itemx -L @var{file}
-@opindex -L
-@opindex -h
+@optItem{test,-h,@w{ }@var{file}}
+@optItemx{test,-L,@w{ }@var{file}}
@cindex symbolic link check
True if @var{file} exists and is a symbolic link.
Unlike all other file-related tests, this test does not dereference
@var{file} if it is a symbolic link.
-@item -p @var{file}
-@opindex -p
+@optItem{test,-p,@w{ }@var{file}}
@cindex named pipe check
True if @var{file} exists and is a named pipe.
-@item -S @var{file}
-@opindex -S
+@optItem{test,-S,@w{ }@var{file}}
@cindex socket check
True if @var{file} exists and is a socket.
-@item -t @var{fd}
-@opindex -t
+@optItem{test,-t,@w{ }@var{fd}}
@cindex terminal check
True if @var{fd} is a file descriptor that is associated with a
terminal.
@table @samp
-@item -g @var{file}
-@opindex -g
+@optItem{test,-g,@w{ }@var{file}}
@cindex set-group-ID check
True if @var{file} exists and has its set-group-ID bit set.
-@item -k @var{file}
-@opindex -k
+@optItem{test,-k,@w{ }@var{file}}
@cindex sticky bit check
True if @var{file} exists and has its @dfn{sticky} bit set.
-@item -r @var{file}
-@opindex -r
+@optItem{test,-r,@w{ }@var{file}}
@cindex readable file check
True if @var{file} exists and the user has read access.
-@item -u @var{file}
-@opindex -u
+@optItem{test,-u,@w{ }@var{file}}
@cindex set-user-ID check
True if @var{file} exists and has its set-user-ID bit set.
-@item -w @var{file}
-@opindex -w
+@optItem{test,-w,@w{ }@var{file}}
@cindex writable file check
True if @var{file} exists and the user has write access.
-@item -x @var{file}
-@opindex -x
+@optItem{test,-x,@w{ }@var{file}}
@cindex executable file check
True if @var{file} exists and the user has execute access
(or search permission, if it is a directory).
-@item -O @var{file}
-@opindex -O
+@optItem{test,-O,@w{ }@var{file}}
@cindex owned by effective user ID check
True if @var{file} exists and is owned by the current effective user ID.
-@item -G @var{file}
-@opindex -G
+@optItem{test,-G,@w{ }@var{file}}
@cindex owned by effective group ID check
True if @var{file} exists and is owned by the current effective group ID.
@table @samp
-@item -e @var{file}
-@opindex -e
+@optItem{test,-e,@w{ }@var{file}}
@cindex existence-of-file check
True if @var{file} exists.
-@item -s @var{file}
-@opindex -s
+@optItem{test,-s,@w{ }@var{file}}
@cindex nonempty file check
True if @var{file} exists and has a size greater than zero.
+@optAnchor{test,-nt}
@item @var{file1} -nt @var{file2}
@opindex -nt
@cindex newer-than file check
True if @var{file1} is newer (according to modification date) than
@var{file2}, or if @var{file1} exists and @var{file2} does not.
+@optAnchor{test,-ot}
@item @var{file1} -ot @var{file2}
@opindex -ot
@cindex older-than file check
True if @var{file1} is older (according to modification date) than
@var{file2}, or if @var{file2} exists and @var{file1} does not.
+@optAnchor{test,-ef}
@item @var{file1} -ef @var{file2}
@opindex -ef
@cindex same file check
True if @var{file1} and @var{file2} have the same device and inode
numbers, i.e., if they are hard links to each other.
-@item -N @var{file}
-@opindex -N
+@optItem{test,-N,@w{ }@var{file}}
@cindex mtime-greater-atime file check
True if @var{file} exists and has been modified (mtime) since it was
last read (atime).
@table @samp
-@item -z @var{string}
-@opindex -z
+@optItem{test,-z,@w{ }@var{string}}
@cindex zero-length string check
True if the length of @var{string} is zero.
-@item -n @var{string}
+@optItem{test,-n,@w{ }@var{string}}
@itemx @var{string}
-@opindex -n
@cindex nonzero-length string check
True if the length of @var{string} is nonzero.
@table @samp
+@optAnchor{test,-eq}
+@optAnchor{test,-ne}
+@optAnchor{test,-lt}
+@optAnchor{test,-le}
+@optAnchor{test,-gt}
+@optAnchor{test,-ge}
@item @var{arg1} -eq @var{arg2}
@itemx @var{arg1} -ne @var{arg2}
@itemx @var{arg1} -lt @var{arg2}
of a binary expression, I.e., @samp{! 1 -gt 2}
rather than @samp{1 ! -gt 2}.
+@optAnchor{test,-a}
@item @var{expr1} -a @var{expr2}
@opindex -a
@cindex logical and operator
@samp{-a} is left associative,
and has a higher precedence than @samp{-o}.
+@optAnchor{test,-o}
@item @var{expr1} -o @var{expr2}
@opindex -o
@cindex logical or operator
The program accepts the following options. Also see @ref{Common options}.
@table @samp
-@item -a
-@itemx --append
-@opindex -a
-@opindex --append
+@optItem{tee,-a}
+@optItemx{tee,--append}
Append standard input to the given files rather than overwriting
them.
-@item -i
-@itemx --ignore-interrupts
-@opindex -i
-@opindex --ignore-interrupts
+@optItem{tee,-i}
+@optItemx{tee,--ignore-interrupts}
Ignore interrupt signals.
-@item -p
-@itemx --output-error[=@var{mode}]
-@opindex -p
-@opindex --output-error
+@optItem{tee,-p}
+@optItemx{tee,--output-error,[=@var{mode}]}
Adjust the behavior with errors on the outputs.
In summary @option{-p} allows @command{tee} to operate in a more
appropriate manner with pipes, and to continue to process data
@table @samp
-@item -a
-@itemx --multiple
-@opindex -a
-@opindex --multiple
+@optItem{basename,-a}
+@optItemx{basename,--multiple}
Support more than one argument. Treat every argument as a @var{name}.
With this, an optional @var{suffix} must be specified using the
@option{-s} option.
-@item -s @var{suffix}
-@itemx --suffix=@var{suffix}
-@opindex -s
-@opindex --suffix
+@optItem{basename,-s,@w{ }@var{suffix}}
+@optItemx{basename,--suffix,=@var{suffix}}
Remove a trailing @var{suffix}.
This option implies the @option{-a} option.
-@optZero
+@optZero{basename}
@end table
@table @samp
-@optZero
+@optZero{dirname}
@end table
@table @samp
-@item -p
-@opindex -p
+@optItem{pathchk,-p}
Instead of performing checks based on the underlying file system,
print an error message if any of these conditions is true:
POSIX minimum limits for portability.
@end enumerate
-@item -P
-@opindex -P
+@optItem{pathchk,-P}
Print an error message if a file name is empty, or if it contains a component
that begins with @samp{-}.
-@item --portability
-@opindex --portability
+@optItem{pathchk,--portability}
Print an error message if a file name is not portable to all POSIX
hosts. This option is equivalent to @samp{-p -P}.
@table @samp
-@item -d
-@itemx --directory
-@opindex -d
-@opindex --directory
+@optItem{mktemp,-d}
+@optItemx{mktemp,--directory}
Create a directory rather than a file. The directory will have read,
write, and search permissions for the current user, but no permissions
for the group or others; these permissions are reduced if the current
umask is more restrictive.
-@item -q
-@itemx --quiet
-@opindex -q
-@opindex --quiet
+@optItem{mktemp,-q}
+@optItemx{mktemp,--quiet}
Suppress diagnostics about failure to create a file or directory. The
exit status will still reflect whether a file was created.
-@item -u
-@itemx --dry-run
-@opindex -u
-@opindex --dry-run
+@optItem{mktemp,-u}
+@optItemx{mktemp,--dry-run}
Generate a temporary name that does not name an existing file, without
changing the file system contents. Using the output of this command
to create a new file is inherently unsafe, as there is a window of
time between generating the name and using it where another process
can create an object by the same name.
-@item -p @var{dir}
-@itemx --tmpdir[=@var{dir}]
-@opindex -p
-@opindex --tmpdir
+@optItem{mktemp,-p,@w{ }@var{dir}}
+@optItemx{mktemp,--tmpdir,[=@var{dir}]}
Treat @var{template} relative to the directory @var{dir}. If
@var{dir} is not specified (only possible with the long option
@option{--tmpdir}) or is the empty string, use the value of
@var{template} can still contain slashes, although intermediate
directories must already exist.
-@item --suffix=@var{suffix}
-@opindex --suffix
+@optItem{mktemp,--suffix,=@var{suffix}}
Append @var{suffix} to the @var{template}. @var{suffix} must not
contain slash. If @option{--suffix} is specified, @var{template} must
end in @samp{X}; if it is not specified, then an appropriate
@var{template} and for the creation of a @var{suffix} that starts with
@samp{X}.
-@item -t
-@opindex -t
+@optItem{mktemp,-t}
Treat @var{template} as a single file relative to the value of
@env{TMPDIR} if available, or to the directory specified by
@option{-p}, otherwise to @samp{/tmp}. @var{template} must not
@table @samp
-@item -E
-@itemx --canonicalize
-@opindex -E
-@opindex --canonicalize
-
+@optItem{realpath,-E}
+@optItemx{realpath,--canonicalize}
Do not fail merely because the named file does not exist.
Although this is the default behavior of GNU @code{realpath},
POSIX does not require this default, so portable applications should
use an explicit @option{-E}.
-@item -e
-@itemx --canonicalize-existing
-@opindex -e
-@opindex --canonicalize-existing
+@optItem{realpath,-e}
+@optItemx{realpath,--canonicalize-existing}
Fail if the named file does not exist.
A trailing slash requires that the name resolve to a directory.
-@item -m
-@itemx --canonicalize-missing
-@opindex -m
-@opindex --canonicalize-missing
+@optItem{realpath,-m}
+@optItemx{realpath,--canonicalize-missing}
If any component of a specified file name is missing or unavailable,
treat it as a directory.
-@item -L
-@itemx --logical
-@opindex -L
-@opindex --logical
+@optItem{realpath,-L}
+@optItemx{realpath,--logical}
Symbolic links are resolved in the specified file names,
but they are resolved after any subsequent @samp{..} components are processed.
-@item -P
-@itemx --physical
-@opindex -P
-@opindex --physical
+@optItem{realpath,-P}
+@optItemx{realpath,--physical}
Symbolic links are resolved in the specified file names,
and they are resolved before any subsequent @samp{..} components are processed.
This is the default mode of operation.
-@item -q
-@itemx --quiet
-@opindex -q
-@opindex --quiet
+@optItem{realpath,-q}
+@optItemx{realpath,--quiet}
Suppress diagnostic messages for specified file names.
-@item --relative-to=@var{dir}
-@opindex --relative-to
+@optItem{realpath,--relative-to,=@var{dir}}
@cindex relpath
Print the resolved file names relative to the specified directory.
This option honors the @option{-m} and @option{-e} options
pertaining to file existence.
-@item --relative-base=@var{dir}
-@opindex --relative-base
+@optItem{realpath,--relative-base,=@var{dir}}
Print the resolved file names as relative @emph{if} the files
are descendants of @var{dir}.
Otherwise, print the resolved file names as absolute.
For details about combining @option{--relative-to} and @option{--relative-base},
@pxref{Realpath usage examples}.
-@item -s
-@itemx --strip
-@itemx --no-symlinks
-@opindex -s
-@opindex --strip
-@opindex --no-symlinks
+@optItem{realpath,-s}
+@optItemx{realpath,--strip}
+@optItemx{realpath,--no-symlinks}
Do not resolve symbolic links. Only resolve references to
@samp{/./}, @samp{/../} and remove extra @samp{/} characters.
When combined with the @option{-m} option, realpath operates
only on the file name, and does not touch any actual file.
-@optZero
+@optZero{realpath}
@end table
The program accepts the following options. Also see @ref{Common options}.
@table @samp
-@item -L
-@itemx --logical
-@opindex -L
-@opindex --logical
+@optItem{pwd,-L}
+@optItemx{pwd,--logical}
If the contents of the environment variable @env{PWD} provide an
absolute name of the current directory with no @samp{.} or @samp{..}
components, but possibly with symbolic links, then output those
contents. Otherwise, fall back to default @option{-P} handling.
-@item -P
-@itemx --physical
-@opindex -P
-@opindex --physical
+@optItem{pwd,-P}
+@optItemx{pwd,--physical}
Print a fully resolved name for the current directory. That is, all
components of the printed name will be actual directory names -- none
will be symbolic links.
The program accepts the following options. Also see @ref{Common options}.
@table @samp
-@item -a
-@itemx --all
-@opindex -a
-@opindex --all
+@optItem{stty,-a}
+@optItemx{stty,--all}
Print all current settings in human-readable form. This option may not
be used in combination with any line settings.
-@item -F @var{device}
-@itemx --file=@var{device}
-@opindex -F
-@opindex --file
+@optItem{stty,-F,@w{ }@var{device}}
+@optItemx{stty,--file,=@var{device}}
Set the line opened by the file name specified in @var{device} instead of
the tty line connected to standard input. This option is necessary
because opening a POSIX tty requires use of the
the @code{clocal} flag is not set. Hence, it is not always possible
to allow the shell to open the device in the traditional manner.
-@item -g
-@itemx --save
-@opindex -g
-@opindex --save
+@optItem{stty,-g}
+@optItemx{stty,--save}
@cindex machine-readable @command{stty} output
Print all current settings in a form that can be used as an argument to
another @command{stty} command to restore the current settings. This option
@table @samp
-@optNull
+@optNull{printenv}
@end table
@table @samp
-@item -s
-@itemx --silent
-@itemx --quiet
-@opindex -s
-@opindex --silent
-@opindex --quiet
+@optItem{printenv,-s}
+@optItemx{printenv,--silent}
+@optItemx{printenv,--quiet}
Print nothing; only return an exit status.
@end table
Also see @ref{Common options}.
@table @samp
-@item -g
-@itemx --group
-@opindex -g
-@opindex --group
+@optItem{id,-g}
+@optItemx{id,--group}
Print only the group ID.
-@item -G
-@itemx --groups
-@opindex -G
-@opindex --groups
+@optItem{id,-G}
+@optItemx{id,--groups}
Print only the group ID and the supplementary groups.
-@item -n
-@itemx --name
-@opindex -n
-@opindex --name
+@optItem{id,-n}
+@optItemx{id,--name}
Print the user or group name instead of the ID number. Requires
@option{-u}, @option{-g}, or @option{-G}.
-@item -r
-@itemx --real
-@opindex -r
-@opindex --real
+@optItem{id,-r}
+@optItemx{id,--real}
Print the real, instead of effective, user or group ID@. Requires
@option{-u}, @option{-g}, or @option{-G}.
-@item -u
-@itemx --user
-@opindex -u
-@opindex --user
+@optItem{id,-u}
+@optItemx{id,--user}
Print only the user ID.
-@item -Z
-@itemx --context
-@opindex -Z
-@opindex --context
+@optItem{id,-Z}
+@optItemx{id,--context}
@cindex SELinux
@cindex security context
Print only the security context of the process, which is generally
If neither SELinux or SMACK is enabled then print a warning and
set the exit status to 1.
-@item -z
-@itemx --zero
-@opindex -z
-@opindex --zero
+@optItem{id,-z}
+@optItemx{id,--zero}
Delimit output items with ASCII NUL characters.
This option is not permitted when using the default format.
When multiple users are specified, and the @option{--groups} option
@table @samp
-@item -a
-@itemx --all
-@opindex -a
-@opindex --all
+@optItem{who,-a}
+@optItemx{who,--all}
Same as @samp{-b -d --login -p -r -t -T -u}.
-@item -b
-@itemx --boot
-@opindex -b
-@opindex --boot
+@optItem{who,-b}
+@optItemx{who,--boot}
Print the date and time of last system boot.
-@item -d
-@itemx --dead
-@opindex -d
-@opindex --dead
+@optItem{who,-d}
+@optItemx{who,--dead}
Print information corresponding to dead processes.
-@item -H
-@itemx --heading
-@opindex -H
-@opindex --heading
+@optItem{who,-H}
+@optItemx{who,--heading}
Print a line of column headings.
-@item -l
-@itemx --login
-@opindex -l
-@opindex --login
+@optItem{who,-l}
+@optItemx{who,--login}
List only the entries that correspond to processes via which the
system is waiting for a user to login. The user name is always @samp{LOGIN}.
-@macro lookupOption
-@item --lookup
-@opindex --lookup
+@macro lookupOption{cmd}
+@optItem{\cmd\,--lookup}
Attempt to canonicalize hostnames found in utmp through a DNS lookup.
This is not the default because of potential delays.
@end macro
-@lookupOption
+@lookupOption{who}
-@item -m
-@opindex -m
+@optItem{who,-m}
Same as @samp{who am i}.
-@item -p
-@itemx --process
-@opindex -p
-@opindex --process
+@optItem{who,-p}
+@optItemx{who,--process}
List active processes spawned by init.
-@item -q
-@itemx --count
-@opindex -q
-@opindex --count
+@optItem{who,-q}
+@optItemx{who,--count}
Print only the login names and the number of users logged on.
Overrides all other options.
-@item -r
-@itemx --runlevel
-@opindex -r
-@opindex --runlevel
+@optItem{who,-r}
+@optItemx{who,--runlevel}
Print the current (and maybe previous) run-level of the init process.
-@item -s
-@opindex -s
+@optItem{who,-s}
+@optItem{who,--short}
Ignored; for compatibility with other versions of @command{who}.
-@item -t
-@itemx --time
-@opindex -t
-@opindex --time
+@optItem{who,-t}
+@optItemx{who,--time}
Print last system clock change.
-@item -u
-@opindex -u
+@optItem{who,-u}
@cindex idle time
After the login time, print the number of hours and minutes that the
user has been idle. @samp{.} means the user was active in the last minute.
@samp{old} means the user has been idle for more than 24 hours.
-@item -w
-@itemx -T
-@itemx --mesg
-@itemx --message
-@itemx --writable
-@opindex -w
-@opindex -T
-@opindex --mesg
-@opindex --message
-@opindex --writable
+@optItem{who,-w}
+@optItemx{who,-T}
+@optItemx{who,--mesg}
+@optItemx{who,--message}
+@optItemx{who,--writable}
@cindex message status
@pindex write@r{, allowed}
After each login name print a character indicating the user's message status:
@table @samp
-@item -l
-@opindex -l
+@optItem{pinky,-l}
Produce long format output.
When producing long output at least one @var{username} must be given.
If @var{username} cannot be found, the real name is printed as
@samp{???} and the home directory and shell are omitted.
-@item -b
-@opindex -b
+@optItem{pinky,-b}
Omit the user's home directory and shell when printing in long format.
-@item -h
-@opindex -h
+@optItem{pinky,-h}
Omit the user's project file when printing in long format.
-@item -p
-@opindex -p
+@optItem{pinky,-p}
Omit the user's plan file when printing in long format.
-@item -s
-@opindex -s
+@optItem{pinky,-s}
Produce short format output. This is the default behavior when no
options are given.
-@item -f
-@opindex -f
+@optItem{pinky,-f}
Omit the column headings when printing in short format.
-@item -w
-@opindex -w
+@optItem{pinky,-w}
Omit the user's full name when printing in short format.
-@item -i
-@opindex -i
+@optItem{pinky,-i}
Omit the user's full name and remote host when printing in short
format.
-@item -q
-@opindex -q
+@optItem{pinky,-q}
Omit the user's full name, remote host, and idle time when printing in
short format.
-@lookupOption
+@lookupOption{pinky}
@end table
@table @samp
-@item -d @var{datestr}
-@itemx --date=@var{datestr}
-@opindex -d
-@opindex --date
+@optItem{date,-d,@w{ }@var{datestr}}
+@optItemx{date,--date,=@var{datestr}}
@cindex parsing date strings
@cindex date strings, parsing
@cindex arbitrary date strings, parsing
@end example
@xref{Date input formats}.
-@item --debug
-@opindex --debug
+@optItem{date,--debug}
@cindex debugging date strings
@cindex date strings, debugging
@cindex arbitrary date strings, debugging
Annotate the parsed date, display the effective time zone, and warn about
potential misuse.
-@item -f @var{datefile}
-@itemx --file=@var{datefile}
-@opindex -f
-@opindex --file
+@optItem{date,-f,@w{ }@var{datefile}}
+@optItemx{date,--file,=@var{datefile}}
Parse each line in @var{datefile} as with @option{-d} and display the
resulting date and time. If @var{datefile} is @samp{-}, use standard
input. This is useful when you have many dates to process, because the
system overhead of starting up the @command{date} executable many times can
be considerable.
-@item -I[@var{timespec}]
-@itemx --iso-8601[=@var{timespec}]
-@opindex -I[@var{timespec}]
-@opindex --iso-8601[=@var{timespec}]
+@optItem{date,-I,[@var{timespec}]}
+@optItemx{date,--iso-8601,[=@var{timespec}]}
Display the date using an ISO 8601 format, @samp{%Y-%m-%d}.
The argument @var{timespec} specifies the number of additional
@end macro
@dateParseNote
-@item -r @var{file}
-@itemx --reference=@var{file}
-@opindex -r
-@opindex --reference
+@optItem{date,-r,@w{ }@var{file}}
+@optItemx{date,--reference,=@var{file}}
Display the date and time of the last modification of @var{file},
instead of the current date and time.
-@item --resolution
-@opindex --resolution
+@optItem{date,--resolution}
Display the timestamp resolution instead of the time.
Current clock timestamps that are output by @command{date}
are integer multiples of the timestamp resolution.
0.001000000
@end example
-@item -R
-@itemx --rfc-email
-@opindex -R
-@opindex --rfc-email
+@optItem{date,-R}
+@optItemx{date,--rfc-email}
Display the date and time using the format @samp{%a, %d %b %Y %H:%M:%S
%z}, evaluated in the C locale so abbreviations are always in English.
For example:
@option{--rfc-2822} and @option{--rfc-822} are aliases for
@option{--rfc-email}.
-@item --rfc-3339=@var{timespec}
-@opindex --rfc-3339=@var{timespec}
+@optItem{date,--rfc-3339,=@var{timespec}}
Display the date using a format specified by
@uref{https://datatracker.ietf.org/doc/rfc3339/, Internet
RFC 3339}. This is like @option{--iso-8601}, except that a space rather
@end table
-@item -s @var{datestr}
-@itemx --set=@var{datestr}
-@opindex -s
-@opindex --set
+@optItem{date,-s,@w{ }@var{datestr}}
+@optItemx{date,--set,=@var{datestr}}
Set the date and time to @var{datestr}. See @option{-d} above.
See also @ref{Setting the time}.
-@item -u
-@itemx --utc
-@itemx --universal
-@opindex -u
-@opindex --utc
-@opindex --universal
+@optItem{date,-u}
+@optItemx{date,--utc}
+@optItemx{date,--universal}
@cindex Coordinated Universal Time
@cindex UTC
@cindex Greenwich Mean Time
@table @samp
-@item --all
-@opindex --all
+@optItem{nproc,--all}
Print the number of installed processors on the system, which may
be greater than the number online or available to the current process.
The @env{OMP_NUM_THREADS} or @env{OMP_THREAD_LIMIT} environment variables,
or cgroup CPU quotas, are not honored in this case.
-@item --ignore=@var{number}
-@opindex --ignore
+@optItem{nproc,--ignore,=@var{number}}
If possible, exclude this @var{number} of processing units.
@end table
@table @samp
-@item -a
-@itemx --all
-@opindex -a
-@opindex --all
+@optItem{uname,-a}
+@optItemx{uname,--all}
Print all of the below information, except omit the processor type
and the hardware platform name if they are unknown.
-@item -i
-@itemx --hardware-platform
-@opindex -i
-@opindex --hardware-platform
+@optItem{uname,-i}
+@optItemx{uname,--hardware-platform}
@cindex implementation, hardware
@cindex hardware platform
@cindex platform, hardware
Print @samp{unknown} if this information is not available.
This is non-portable, even across GNU/Linux distributions.
-@item -m
-@itemx --machine
-@opindex -m
-@opindex --machine
+@optItem{uname,-m}
+@optItemx{uname,--machine}
@cindex machine type
@cindex hardware class
@cindex hardware type
Print the machine hardware name (sometimes called the hardware class
or hardware type).
-@item -n
-@itemx --nodename
-@opindex -n
-@opindex --nodename
+@optItem{uname,-n}
+@optItemx{uname,--nodename}
@cindex hostname
@cindex node name
@cindex network node name
Print the network node hostname.
-@item -p
-@itemx --processor
-@opindex -p
-@opindex --processor
+@optItem{uname,-p}
+@optItemx{uname,--processor}
@cindex host processor type
Print the processor type (sometimes called the instruction set
architecture or ISA).
Print @samp{unknown} if this information is not available.
This is non-portable, even across GNU/Linux distributions.
-@item -o
-@itemx --operating-system
-@opindex -o
-@opindex --operating-system
+@optItem{uname,-o}
+@optItemx{uname,--operating-system}
@cindex operating system name
Print the name of the operating system.
-@item -r
-@itemx --kernel-release
-@opindex -r
-@opindex --kernel-release
+@optItem{uname,-r}
+@optItemx{uname,--kernel-release}
@cindex kernel release
@cindex release of kernel
Print the kernel release.
-@item -s
-@itemx --kernel-name
-@opindex -s
-@opindex --kernel-name
+@optItem{uname,-s}
+@optItemx{uname,--kernel-name}
@cindex kernel name
@cindex name of kernel
Print the kernel name.
name as their underlying kernels; others (e.g., GNU/Linux, Solaris)
do not.
-@item -v
-@itemx --kernel-version
-@opindex -v
-@opindex --kernel-version
+@optItem{uname,-v}
+@optItemx{uname,--kernel-version}
@cindex kernel version
@cindex version of kernel
Print the kernel version.
@table @samp
-@item --dereference
-@opindex --dereference
+@optItem{chcon,--dereference}
Do not affect symbolic links but what they refer to; this is the default.
-@item -h
-@itemx --no-dereference
-@opindex -h
-@opindex --no-dereference
+@optItem{chcon,-h}
+@optItemx{chcon,--no-dereference}
@cindex no dereference
Affect the symbolic links themselves instead of any referenced file.
-@item --reference=@var{rfile}
-@opindex --reference
+@optItem{chcon,--reference,=@var{rfile}}
@cindex reference file
Use @var{rfile}'s security context rather than specifying a @var{context} value.
-@item -R
-@itemx --recursive
-@opindex -R
-@opindex --recursive
+@optItem{chcon,-R}
+@optItemx{chcon,--recursive}
Operate on files and directories recursively.
-@item --preserve-root
-@opindex --preserve-root
+@optItem{chcon,--preserve-root}
Refuse to operate recursively on the root directory, @file{/},
when used together with the @option{--recursive} option.
@xref{Treating / specially}.
-@item --no-preserve-root
-@opindex --no-preserve-root
+@optItem{chcon,--no-preserve-root}
Do not treat the root directory, @file{/}, specially when operating
recursively; this is the default.
@xref{Treating / specially}.
-@choptH
+@choptH{chcon}
@xref{Traversing symlinks}.
-@choptL
+@choptL{chcon}
@xref{Traversing symlinks}.
-@choptP
+@choptP{chcon}
@xref{Traversing symlinks}.
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{chcon,-v}
+@optItemx{chcon,--verbose}
@cindex diagnostic
Output a diagnostic for every file processed.
-@item -u @var{user}
-@itemx --user=@var{user}
-@opindex -u
-@opindex --user
+@optItem{chcon,-u,@w{ }@var{user}}
+@optItemx{chcon,--user,=@var{user}}
Set user @var{user} in the target security context.
-@item -r @var{role}
-@itemx --role=@var{role}
-@opindex -r
-@opindex --role
+@optItem{chcon,-r,@w{ }@var{role}}
+@optItemx{chcon,--role,=@var{role}}
Set role @var{role} in the target security context.
-@item -t @var{type}
-@itemx --type=@var{type}
-@opindex -t
-@opindex --type
+@optItem{chcon,-t,@w{ }@var{type}}
+@optItemx{chcon,--type,=@var{type}}
Set type @var{type} in the target security context.
-@item -l @var{range}
-@itemx --range=@var{range}
-@opindex -l
-@opindex --range
+@optItem{chcon,-l,@w{ }@var{range}}
+@optItemx{chcon,--range,=@var{range}}
Set range @var{range} in the target security context.
@end table
@table @samp
-@item -c
-@itemx --compute
-@opindex -c
-@opindex --compute
+@optItem{runcon,-c}
+@optItemx{runcon,--compute}
Compute process transition context before modifying.
-@item -u @var{user}
-@itemx --user=@var{user}
-@opindex -u
-@opindex --user
+@optItem{runcon,-u,@w{ }@var{user}}
+@optItemx{runcon,--user,=@var{user}}
Set user @var{user} in the target security context.
-@item -r @var{role}
-@itemx --role=@var{role}
-@opindex -r
-@opindex --role
+@optItem{runcon,-r,@w{ }@var{role}}
+@optItemx{runcon,--role,=@var{role}}
Set role @var{role} in the target security context.
-@item -t @var{type}
-@itemx --type=@var{type}
-@opindex -t
-@opindex --type
+@optItem{runcon,-t,@w{ }@var{type}}
+@optItemx{runcon,--type,=@var{type}}
Set type @var{type} in the target security context.
-@item -l @var{range}
-@itemx --range=@var{range}
-@opindex -l
-@opindex --range
+@optItem{runcon,-l,@w{ }@var{range}}
+@optItemx{runcon,--range,=@var{range}}
Set range @var{range} in the target security context.
@end table
@table @samp
-@item --groups=@var{groups}
-@opindex --groups
+@optItem{chroot,--groups,=@var{groups}}
Use this option to override the supplementary @var{groups} to be
used by the new process.
The items in the list (names or numeric IDs) must be separated by commas.
Use @samp{--groups=''} to disable the supplementary group look-up
implicit in the @option{--userspec} option.
-@item --userspec=@var{user}[:@var{group}]
-@opindex --userspec
+@optItem{chroot,--userspec,=@var{user}[:@var{group}]}
By default, @var{command} is run with the same credentials
as the invoking process.
Use this option to run it as a different @var{user} and/or with a
are set according to the system defined list for that user,
unless overridden with the @option{--groups} option.
-@item --skip-chdir
-@opindex --skip-chdir
+@optItem{chroot,--skip-chdir}
Use this option to not change the working directory to @file{/} after changing
the root directory to @var{newroot}, i.e., inside the chroot.
This option is only permitted when @var{newroot} is the old @file{/} directory,
@table @samp
-@optNull
+@optNull{env}
-@item -a @var{arg}
-@itemx --argv0=@var{arg}
-@opindex -a
-@opindex --argv0
+@optItem{env,-a,@w{ }@var{arg}}
+@optItemx{env,--argv0,=@var{arg}}
Override the zeroth argument passed to the command being executed.
Without this option a default value of @var{command} is used.
-@item -u @var{name}
-@itemx --unset=@var{name}
-@opindex -u
-@opindex --unset
+@optItem{env,-u,@w{ }@var{name}}
+@optItemx{env,--unset,=@var{name}}
Remove variable @var{name} from the environment, if it was in the
environment.
-@item -
-@itemx -i
-@itemx --ignore-environment
-@opindex -
-@opindex -i
-@opindex --ignore-environment
+@optItem{env,-}
+@optItemx{env,-i}
+@optItemx{env,--ignore-environment}
Start with an empty environment, ignoring the inherited environment.
-@item -C @var{dir}
-@itemx --chdir=@var{dir}
-@opindex -C
-@opindex --chdir
+@optItem{env,-C,@w{ }@var{dir}}
+@optItemx{env,--chdir,=@var{dir}}
Change the working directory to @var{dir} before invoking @var{command}.
This differs from the shell built-in @command{cd} in that it starts
@var{command} as a subprocess rather than altering the shell's own working
env --chdir=/build FOO=bar timeout 5 true
@end example
-@item --default-signal[=@var{sig}]
+@optItem{env,--default-signal,[=@var{sig}]}
Unblock and reset signal @var{sig} to its default signal handler.
Without @var{sig} all known signals are unblocked and reset to their defaults.
Multiple signals can be comma-separated. An empty @var{sig} argument is a no-op.
@end example
-@item --ignore-signal[=@var{sig}]
+@optItem{env,--ignore-signal,[=@var{sig}]}
Ignore signal @var{sig} when running a program. Without @var{sig} all
known signals are set to ignore. Multiple signals can be comma-separated.
An empty @var{sig} argument is a no-op. The following command runs @command{seq}
env --default-signal=INT,PIPE --ignore-signal=INT
@end example
-@item --block-signal[=@var{sig}]
+@optItem{env,--block-signal,[=@var{sig}]}
Block signal(s) @var{sig} from being delivered. Without @var{sig} all
known signals are set to blocked. Multiple signals can be comma-separated.
An empty @var{sig} argument is a no-op.
-@item --list-signal-handling
+@optItem{env,--list-signal-handling}
List blocked or ignored signals to standard error, before executing a command.
-@item -v
-@itemx --debug
-@opindex -v
-@opindex --debug
+@optItem{env,-v}
+@optItemx{env,--debug}
Show verbose information for each processing step.
@example
When combined with @option{-S} it is recommended to list @option{-v}
first, e.g. @command{env -vS'string'}.
-@item -S @var{string}
-@itemx --split-string=@var{string}
-@opindex -S
-@opindex --split-string
+@optItem{env,-S,@w{ }@var{string}}
+@optItemx{env,--split-string,=@var{string}}
@cindex shebang arguments
@cindex scripts arguments
@cindex env in scripts
Options must precede operands.
@table @samp
-@item -n @var{adjustment}
-@itemx --adjustment=@var{adjustment}
-@opindex -n
-@opindex --adjustment
+@optItem{nice,-n,@w{ }@var{adjustment}}
+@optItemx{nice,--adjustment,=@var{adjustment}}
Add @var{adjustment} instead of 10 to the command's niceness. If
@var{adjustment} is negative and you lack appropriate privileges,
@command{nice} issues a warning but otherwise acts as if you specified
@table @samp
-@item -i @var{mode}
-@itemx --input=@var{mode}
-@opindex -i
-@opindex --input
+@optItem{stdbuf,-i,@w{ }@var{mode}}
+@optItemx{stdbuf,--input,=@var{mode}}
Adjust the standard input stream buffering.
-@item -o @var{mode}
-@itemx --output=@var{mode}
-@opindex -o
-@opindex --output
+@optItem{stdbuf,-o,@w{ }@var{mode}}
+@optItemx{stdbuf,--output,=@var{mode}}
Adjust the standard output stream buffering.
-@item -e @var{mode}
-@itemx --error=@var{mode}
-@opindex -e
-@opindex --error
+@optItem{stdbuf,-e,@w{ }@var{mode}}
+@optItemx{stdbuf,--error,=@var{mode}}
Adjust the standard error stream buffering.
@end table
Options must precede operands.
@table @samp
-@item -f
-@itemx --foreground
-@opindex -f
-@opindex --foreground
+@optItem{timeout,-f}
+@optItemx{timeout,--foreground}
Don't create a separate background program group, so that
the managed @var{command} can use the foreground TTY normally.
This is needed to support two situations when timing out commands,
cause intermittent signal delivery issues with programs that are monitors
themselves (like GDB for example).
-@item -k @var{duration}
-@itemx --kill-after=@var{duration}
-@opindex -k
-@opindex --kill-after
+@optItem{timeout,-k,@w{ }@var{duration}}
+@optItemx{timeout,--kill-after,=@var{duration}}
Ensure the monitored @var{command} is killed by also sending a @samp{KILL}
signal.
too long (e.g. for cleanup work) to terminate itself within a certain amount
of time.
-@item -p
-@itemx --preserve-status
-@opindex -p
-@opindex --preserve-status
+@optItem{timeout,-p}
+@optItemx{timeout,--preserve-status}
Return the exit status of the managed @var{command} on timeout, rather than
a specific exit status indicating a timeout. This is useful if the
managed @var{command} supports running for an indeterminate amount of time.
-@item -s @var{signal}
-@itemx --signal=@var{signal}
-@opindex -s
-@opindex --signal
+@optItem{timeout,-s,@w{ }@var{signal}}
+@optItemx{timeout,--signal,=@var{signal}}
Send this @var{signal} to @var{command} on timeout, rather than the
default @samp{TERM} signal. @var{signal} may be a name like @samp{HUP}
or a number. @xref{Signal specifications}.
-@item -v
-@itemx --verbose
-@opindex -v
-@opindex --verbose
+@optItem{timeout,-v}
+@optItemx{timeout,--verbose}
Diagnose to standard error, any signal sent upon timeout.
@end table
The program accepts the following options. Also see @ref{Common options}.
@table @samp
-@item -h
-@itemx --exponents
-@opindex -h
-@opindex --exponents
+@optItem{factor,-h}
+@optItemx{factor,--exponents}
print factors in the form @math{p^e}, rather than repeating
the prime @samp{p}, @samp{e} times. If the exponent @samp{e} is 1,
then it is omitted.
@table @samp
-@item --debug
-@opindex --debug
+@optItem{numfmt,--debug}
Print (to standard error) warning messages about possible erroneous usage.
-@item -d @var{d}
-@itemx --delimiter=@var{d}
-@opindex -d
-@opindex --delimiter
+@optItem{numfmt,-d}
+@optItemx{numfmt,--delimiter,=@var{d}}
Use the character @var{d} as input field separator (default: newline or blank).
Using non-default delimiter turns off automatic padding.
-@item --field=@var{fields}
-@opindex --field
+@optItem{numfmt,--field,=@var{fields}}
Convert the number in input field @var{fields} (default: 1).
@var{fields} supports @command{cut} style field ranges:
@end example
-@item --format=@var{format}
-@opindex --format
+@optItem{numfmt,--format,=@var{format}}
Use printf-style floating FORMAT string. The @var{format} string must contain
one @samp{%f} directive, optionally with @samp{'}, @samp{-}, @samp{0}, width
or precision modifiers. The @samp{'} modifier will enable @option{--grouping},
will override the precision determined from the input data or set due to
@option{--to} option auto scaling.
-@item --from=@var{unit}
-@opindex --from
+@optItem{numfmt,--from,=@var{unit}}
Auto-scales input numbers according to @var{unit}. See UNITS below.
The default is no scaling, meaning suffixes (e.g. @samp{M}, @samp{G}) will
trigger an error.
-@item --from-unit=@var{n}
-@opindex --from-unit
+@optItem{numfmt,--from-unit,=@var{n}}
Specify the input unit size (instead of the default 1). Use this option when
the input numbers represent other units (e.g. if the input number @samp{10}
represents 10 units of 512 bytes, use @samp{--from-unit=512}).
Suffixes are handled as with @samp{--from=auto}.
-@item --grouping
-@opindex --grouping
+@optItem{numfmt,--grouping}
Group digits in output numbers according to the current locale's grouping rules
(e.g @emph{Thousands Separator} character, commonly @samp{.} (dot) or @samp{,}
comma). This option has no effect in @samp{POSIX/C} locale.
-@item --header[=@var{n}]
-@opindex --header
-@opindex --header=N
+@optItem{numfmt,--header,[=@var{n}]}
Print the first @var{n} (default: 1) lines without any conversion.
-@item --invalid=@var{mode}
-@opindex --invalid
+@optItem{numfmt,--invalid,=@var{mode}}
The default action on input errors is to exit immediately with status code 2.
@option{--invalid=@samp{abort}} explicitly specifies this default mode.
With a @var{mode} of @samp{fail}, print a warning for @emph{each} conversion
status 0, even in the presence of conversion errors, and with a @var{mode} of
@samp{ignore} do not even print diagnostics.
-@item --padding=@var{n}
-@opindex --padding
+@optItem{numfmt,--padding,=@var{n}}
Pad the output numbers to @var{n} characters, by adding spaces. If @var{n} is
a positive number, numbers will be right-aligned. If @var{n} is a negative
number, numbers will be left-aligned. By default, numbers are automatically
aligned based on the input line's width (only with the default delimiter).
-@item --round=@var{method}
+@optItem{numfmt,--round,=@var{method}}
@opindex --round
@opindex --round=up
@opindex --round=down
@var{method}, which can be @samp{up}, @samp{down},
@samp{from-zero} (the default), @samp{towards-zero}, @samp{nearest}.
-@item --suffix=@var{suffix}
-@opindex --suffix
+@optItem{numfmt,--suffix,=@var{suffix}}
Add @samp{SUFFIX} to the output numbers, and accept optional @samp{SUFFIX} in
input numbers.
-@item --to=@var{unit}
-@opindex --to
+@optItem{numfmt,--to,=@var{unit}}
Auto-scales output numbers according to @var{unit}. See @emph{Units} below.
The default is no scaling, meaning all the digits of the number are printed.
-@item --to-unit=@var{n}
-@opindex --to-unit
+@optItem{numfmt,--to-unit,=@var{n}}
Specify the output unit size (instead of the default 1). Use this option when
the output numbers represent other units (e.g. to represent @samp{4,000,000}
bytes in blocks of 1kB, use @samp{--to=si --to-unit=1000}).
Suffixes are handled as with @samp{--from=auto}.
-@item --unit-separator=@var{sep}
-@opindex --unit-separator
+@optItem{numfmt,--unit-separator,=@var{sep}}
Support a separator @var{sep} between the number and unit,
with @option{--from} or @option{--to} auto-scaled units.
By default a blank or non-breaking space character is accepted on input,
Ditto and output non-breaking space: @option{-d '' --unit-separator=$'\u00A0'}
@end example
-@optZeroTerminated
+@optZeroTerminated{numfmt}
@newlineFieldSeparator
@end table
Options must precede operands.
@table @samp
-@item -f @var{format}
-@itemx --format=@var{format}
-@opindex -f
-@opindex --format
+@optItem{seq,-f,@w{ }@var{format}}
+@optItemx{seq,--format,=@var{format}}
@cindex formatting of numbers in @command{seq}
Print all numbers using @var{format}.
@var{format} must contain exactly one of the @samp{printf}-style
precision that can represent the output numbers exactly. Otherwise,
the default format is @samp{%g}.
-@item -s @var{string}
-@itemx --separator=@var{string}
-@opindex -s
-@opindex --separator
+@optItem{seq,-s,@w{ }@var{string}}
+@optItemx{seq,--separator,=@var{string}}
@cindex separator for numbers in @command{seq}
Separate numbers with @var{string}; default is a newline.
The output always terminates with a newline.
-@item -w
-@itemx --equal-width
-@opindex -w
-@opindex --equal-width
+@optItem{seq,-w}
+@optItemx{seq,--equal-width}
Print all numbers with the same width, by padding with leading zeros.
@var{first}, @var{step}, and @var{last} should all use a fixed point
decimal representation.