unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (OSF1-V5.1-alpha)
Page:
Section:
Apropos / Subsearch:
optional field



getopt(1)							    getopt(1)



NAME

  getopt - Parses command line flags and arguments

SYNOPSIS

  getopt format	tokens

DESCRIPTION

  The getopt command is	used to	parse a	list of	tokens using a format that
  specifies expected flags and arguments.  A flag is a single ASCII letter
  and, when followed by	a : (colon), is	expected to take a modifying argument
  that may or may not be separated from	it by one or more tabs or spaces.
  (You can include multi-byte characters in arguments, but not as flag
  letters.)

  The getopt command completes processing when it has read all tokens or when
  it encounters	the special token -- (double dash).  It	then outputs the pro-
  cessed flags,	a --, and any remaining	tokens.

  If a token fails to match a flag, getopt writes a message to standard
  error.

NOTES

  In the csh, use the following	command	to run getopt:

       set argv=`getopt	flag_string $*`

EXAMPLES

  The following	is an example of the use of getopt in a	skeleton shell script
  to parse options:

       #!/bin/sh
       # parse command line into arguments
       set -- `getopt a:bc $*`
       # check result of parsing
       if [ $? != 0 ]
       then
	       exit 1
       fi
       while [ $1 != --	]
       do
	       case $1 in
	       -a)     # set up	the -a flag
		       AFLG=1
		       AARG=$2
		       shift;;
	       -b)     # set up	the -b flag
		       BFLG=1;;
	       -c)     # set up	the -c flag
		       CFLG=1;;
	       esac
	       shift  #	next flag
       done
       shift   # skip double dash
       # now do	the work
       .
       .
       .

  The following	are all	equivalent arguments to	the script:

       -a ARG -b -c -- A B C
       -a ARG -bc -- A B C
       -aARG -b	-c -- A	B C
       -b -c -a	ARG -- A B C

SEE ALSO

  Commands:  sh(1)

  Functions:  getopt(3)