koalaman / shellcheck Public
SC3024
Joachim Ansorg edited this page Nov 12, 2021
·
2 revisions
In POSIX sh, += is undefined.
(or "In dash, ... is not supported." when using dash)
Problematic code:
var="Hello "
var+="World"Correct code:
var="Hello "
var="${var}World"Rationale:
Using += to concatenate to an existing variable is a ksh/bash extension. For POSIX sh or dash, write out the full expression. Be careful to use braces if the text you append could be confused for a variable (as in the example, to avoid $varWorld being interpreted as ${varWorld})
Exceptions:
None.
Related resources:
- Help by adding links to BashFAQ, StackOverflow, man pages, POSIX, etc!