Conditionally perform a command,
case will selectively execute
the command-list corresponding to the first pattern that
Syntax case word in [ [(] pattern [| pattern]...) command-list ;;]... esacThe '|' 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 ';;'.
caseclauses, each terminated by a ';;'. The first pattern that matches determines the command-list that is executed.
casein 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) legs=four;; (man | kangaroo ) legs=two;; (*) echo -n legs="an unknown number of";; esac echo $legs" legs."
The return status is zero if no pattern is matched. Otherwise, the return status is the exit status of the command-list executed.
This is a BASH shell builtin, to display your local syntax from the bash prompt type: help case
" There is a condition worse than blindness, and that is, seeing something that isn't there" ~ Thomas Hardy
Related linux commands:
if - Conditionally perform a command.
for - Expand words, and execute commands.
until - Execute commands (until error).
while - Execute commands.
Equivalent Windows command: IF - Conditionally perform a command.