plan9-getflags(8) debian man page | unix.com

Man Page: plan9-getflags

Operating Environment: debian

Section: 8

GETFLAGS(8)						      System Manager's Manual						       GETFLAGS(8)

NAME
getflags, usage - command-line parsing for shell scripts
SYNOPSIS
getflags $* usage [ progname ]
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 vari- able 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)). If run under sh(1), which does not set $0, the program name must be given explicitly on the command line.
EXAMPLE
Parse the arguments for leak(1): flagfmt='b,s,f binary,r res,x width' args='name | pid list' if(! ifs=() eval `{getflags $*} || ~ $#* 0){ usage exit usage }
SOURCE
/src/cmd/getflags.c /src/cmd/usage.c
SEE ALSO
arg(3) GETFLAGS(8)
Related Man Pages
getoptcvt(1) - sunos
getoptcvt(1) - linux
getoptcvt(1) - php
getoptcvt(1) - v7
getoptcvt(1) - debian
Similar Topics in the Unix Linux Community
string manipulation
Opening Files as command line arguments
script to capture certain output
Converting comma separated to pipe delimited file
passing arguments to external script