getopt(1)
NAME
getopt − parse command options
SYNTAX
set − `getopt optstring `
DESCRIPTION
The getopt command is used to break up and check options in command lines for easy parsing by shell procedures. The optstring argument is a string of recognized option letters. For further information, see getopt(3). 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 white space. The special option −− (double dash) is used to delimit the end of the options. If it is used explicitly, getopt will recognize it. Otherwise, getopt will generate it. In either case, getopt will place it at the end of the options. The positional parameters ($1 $2 ...) of the shell are reset so that each option is preceded by a − and is in its own positional parameter; each option argument is also parsed into its own positional parameter.
EXAMPLE
The following code fragment shows how one might process the arguments for a command that can take the options a or b, as well as the option o, which requires an argument:
set − `getopt abo: $∗`
if [ $? != 0 ]
then
echo $USAGE
exit 2
fi
for i in $∗
do
case $i in
−a │ −b)FLAG=$i; shift;;
−o)OARG=$2; shift 2;;
−−)shift; break;;
esac
done
This code will accept any of the following as equivalent:
cmd −aoarg file file
cmd −a −o arg file file
cmd −oarg −a file file
cmd −a −oarg −− file file
DIAGNOSTICS
Prints an error message on the standard error when it encounters an option letter not included in optstring.