Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ getopt(1) — Ultrix-32 3.1D RISC

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

sh5(1)

getopt(3)

getopt(1)

NAME

getopt − parse command options

SYNTAX

set −− getopt optstring $∗

DESCRIPTION

The getopt command breaks up options in command lines for easy parsing by Shell procedures and checks for legal options. The optstring option letters recognized; if a letter is followed by a colon, the option expects an argument which may or may not be separated from it by white space.  For further information, see getopt(.).

The special option, specified by two hyphens (− -), delimits the end of the options.  If the double hyphens options are used explicitly, getopt recognizes it; otherwise, getopt generates it. In either case, getopt places the double hyphens (- -) at the end of the options. The positional parameters ($1 $2 ...) of the shell are reset so that each option is preceded by a single hyphen (−) 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 you can process the arguments for a command that can take the options a or b, as well as the option o, which requires an argument:

#!/bin/sh5
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 accepts 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

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

SEE ALSO

sh5(1), getopt(3)

Commands

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026