NAME
getflags, usage – command–line parsing for shell scripts |
SYNOPSIS
aux/getflags $*
aux/usage |
DESCRIPTION
Getflags parses the options in its command–line arguments according
to the environment variable $flagfmt. This variable should be
a list of comma–separated options. Each option can be a single
letter, indicating that it does not take arguments, or a letter
followed by the space–separated names of its arguments.
Getflags prints an rc(1) script on standard output which initializes
the environment variable $flagx for every option mentioned in
$flagfmt. If the option is not present on the command–line, the
script sets that option's flag variable to an empty list. Otherwise,
the script sets that option's flag variable with a list
containing the option's arguments or, if the option takes no arguments,
with the string 1. The script also sets the variable $* to the
list of arguments following the options. The final line in the
script sets the $status variable, to the empty string on success
and to the string usage when there is an error parsing the
command line.
Usage prints a usage message to standard error. It creates the
message using $flagfmt, as described above, $args, which should
contain the string to be printed explaining non–option arguments,
and $0, the program name (see rc(1)). |
EXAMPLE
Parse the arguments for leak(1):
|
SOURCE
/sys/src/cmd/aux/getflags.c /sys/src/cmd/aux/usage.c |
SEE ALSO
arg(2) |