control structure
do (when|unless) condition? local declaration* action* (else condition local-declaration* action*)* (else local-declaration* action*)? done
You can use do when
and do unless
to make a group of actions conditional:
do when count > 5 output "more than 5" done
You can use else
to specify actions to be taken if the condition is not met:
do when count > 5 output "more than 5" else output "less than 6" done
You can use one or more else when
statements to provide multiple conditional alternatives:
do when count > 5 output "more than 5" else when count = 5 output "exactly 5" else output "less than 5" done
In all these circumstances you can use do unless
in place of do when
to reverse the test. do unless
is equivalent to do when not
, but in many cases do unless
will be more readable.