DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

getopt(C)


getopt -- parse command options

Syntax

set -- `getopt optstring $*`

Description

This command has been superseded, but is included for backwards compatibility; getopts(C) should be used instead.

getopt is used to check and break up options in command lines for parsing by shell procedures. optstring is a string of recognized option letters (see getopt(S)). If a letter is followed by a colon, the option is expected to have an argument which may or may not be separated from it by whitespace. The special option ``--'' is used to delimit the end of the options. getopt will place ``--'' in the arguments at the end of the options, or recognize it if used explicitly. The shell arguments ($1 $2 ... ) are reset so that each option is preceded by a dash (-) and in its own shell argument. Each option argument is also in its own shell argument.

Diagnostics

getopt prints an error message on the standard error when it encounters an option letter not included in optstring.

Examples

The following code fragment shows how one can process the arguments for a command that can take the options a and b, and the option o, which requires an argument:
   set -- `getopt abo: $*`
   if [ $? != 0 ]
   then
   	echo "usage: $0 [-a | -b] [-o <arg>]"
   	exit 2
   fi
   for i in $*
   do
   	case $i in
   	-a | -b)	shift; FLAG=$i;;
   	-o)		OARG=$3; shift; shift;;
   	--)		shift;	break;;
   	esac
   done
This code will accept any of the following as equivalent:
   cmd -aoarg
   cmd -a -o arg
   cmd -oarg -a
   cmd -a -oarg --

Limitations

The ``Syntax'' given for this utility assumes the user has an sh(C) shell.

See also

getopt(S), getopts(C), sh(C)

Standards conformance

getopt is conformant with AT&T SVID Issue 2.
© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003