Switching case
Apart from simple branches with if
, it is also possible to process multiple decision-making operations using the case
command. In a case
statement, the expression contained in a variable is compared with a number of expressions, and for each expression matched, a command is executed.
It is possible to have multiple branching using the if/elif/else
commands. But if more than two or three elif
commands are used, then code becomes very complex. When all the different conditions are depending on a single variable, in such cases
,
the esac
statement is used. The interpreter checks the value of the case
variable against value1
, value2
, value3
, and so on, till the match is found. If the value is matched then all the statements after that case
value are executed till the double semicolon is reached. If nothing is matched then statements after esac
are executed. Wildcard characters and pipe (vertical bar for ORing two values) are allowed in the case
statement.
A case
statement has the...