(libc.info.gz) Argument Syntax
Info Catalog
(libc.info.gz) Program Arguments
(libc.info.gz) Parsing Program Arguments
25.1.1 Program Argument Syntax Conventions
------------------------------------------
POSIX recommends these conventions for command line arguments. 'getopt'
( Getopt) and 'argp_parse' ( Argp) make it easy to
implement them.
* Arguments are options if they begin with a hyphen delimiter ('-').
* Multiple options may follow a hyphen delimiter in a single token if
the options do not take arguments. Thus, '-abc' is equivalent to
'-a -b -c'.
* Option names are single alphanumeric characters (as for 'isalnum';
Classification of Characters).
* Certain options require an argument. For example, the '-o' command
of the 'ld' command requires an argument--an output file name.
* An option and its argument may or may not appear as separate
tokens. (In other words, the whitespace separating them is
optional.) Thus, '-o foo' and '-ofoo' are equivalent.
* Options typically precede other non-option arguments.
The implementations of 'getopt' and 'argp_parse' in the GNU C
Library normally make it appear as if all the option arguments were
specified before all the non-option arguments for the purposes of
parsing, even if the user of your program intermixed option and
non-option arguments. They do this by reordering the elements of
the ARGV array. This behavior is nonstandard; if you want to
suppress it, define the '_POSIX_OPTION_ORDER' environment variable.
Standard Environment.
* The argument '--' terminates all options; any following arguments
are treated as non-option arguments, even if they begin with a
hyphen.
* A token consisting of a single hyphen character is interpreted as
an ordinary non-option argument. By convention, it is used to
specify input from or output to the standard input and output
streams.
* Options may be supplied in any order, or appear multiple times.
The interpretation is left up to the particular application
program.
GNU adds "long options" to these conventions. Long options consist
of '--' followed by a name made of alphanumeric characters and dashes.
Option names are typically one to three words long, with hyphens to
separate words. Users can abbreviate the option names as long as the
abbreviations are unique.
To specify an argument for a long option, write '--NAME=VALUE'. This
syntax enables a long option to accept an argument that is itself
optional.
Eventually, GNU systems will provide completion for long option names
in the shell.
Info Catalog
(libc.info.gz) Program Arguments
(libc.info.gz) Parsing Program Arguments
automatically generated by
info2html