koalaman / shellcheck Public
SC2121
Joachim Ansorg edited this page Nov 12, 2021
·
4 revisions
To assign a variable, use just var=value, not set ...
Problematic code:
set var=42
set var 42Correct code:
var=42Rationale:
set is not used to set or assign variables in Bourne shells. It's used to set shell options and positional parameters.
To assign variables, use var=value with no set or other qualifiers.
Exceptions
If you actually do want to set positional parameters, simply quoting them or using -- will make shellcheck stop warning, e.g. set -- var1 var2 or set "foo=bar".