In bash at least, if
and case
blocks are closed like this:
if some-expr
then
echo "hello world"
fi
case $some-var in
[1-5])
do-a-thing
;;
*)
do-another-thing
esac
as opposed to the more typical close of end
or endif
/endcase
. As far as I know, this rather funny convention is unique to shell scripting and I have never seen such an odd block terminator anywhere else. Sometimes things like this have an origin in another language (like Ruby's elsif
coming from Perl), or a strange justification. Does this feature of shell scripting have a story behind it? Is it found in other languages?