|
case
Conditionally perform
a command, case
will selectively execute
the command-list corresponding to the first pattern that
matches word.
SYNTAX
case word in [ [(] pattern [| pattern]...) command-list ;;]... esac
The `|' is used to separate multiple patterns,
and the `)' operator terminates a pattern list. A list of patterns
and an associated command-list is known as a clause. Each clause must
be terminated with `;;'. case
clauses, each
terminated by a `;;'. The first pattern that matches determines the
command-list that is executed. case
in a script that could be used to describe
one interesting feature of an animal:
echo -n "Enter the name of an animal: " read ANIMAL echo -n "The $ANIMAL has " case $ANIMAL in horse | dog | cat) echo -n "four";; man | kangaroo ) echo -n "two";; *) echo -n "an unknown number of";; esac echo " legs."The return status is zero if no pattern is matched. Otherwise, the return status is the exit status of the command-list executed.