I would like to write in one line this:
if [$SERVICESTATEID$ -eq 2]; then echo "CRITICAL"; else echo "OK"; fi
So to do a test in my shell I did:
if [2 -eq 3]; then echo "CRITICAL"; else echo "OK"; fi
The result is
-bash: [2: command not found
OK
So it doesn't work.
Write like this, space is required before and after
[
and]
in shellSpace -- the final frontier. This works:
Note spaces after
[
and before]
--[
is a command name! And I removed an extra$
at the end of$SERVICESTATEID
.An alternative is to spell out
test
. Then you don't need the final]
, which is what I prefer: