=
.[ "$var"= 2 ]
[ "$var" = 2 ]
You appear to be missing the space on the left side of the operator. Shell in general, and [
in particular, is space sensitive. Operators and operands must be separate tokens.
Please ensure that the operator, like the =
in the example, has a space both before and after it.
None. If you're comparing values in C style reverse order like [ -eq == $1 ]
, use quotes: [ "-eq" == "$1" ]
. Also, it's pointless since [ a = b ]
doesn't assign.
ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.