Alternative to the Case Statement
Learn the cases when the associative array fits better than the case statement.
We'll cover the following
The case
statement and an associative array solve a similar task. The array makes the relationship between data (key-value). The case statement does the same between data and commands (value-action).
Usually, it’s more convenient to handle data than code. Data is easier for modifying and checking for correctness. Therefore, it’s worth replacing the case
statement with an associative array in some cases. Converting data into code is easy to do in Bash compared with other programming languages.
The following is an example of replacing a case
statement with an array. Let’s suppose we want to write a wrapper script for the archiving utilities. It receives several command-line parameters. The first one defines if the script calls either the bsdtar
or tar
utility.
The following shows the script. It handles the command-line parameters in the case
statement.
Get hands-on with 1200+ tech skills courses.