Skip to content
Vidar Holen edited this page Oct 4, 2015 · 2 revisions

Exporting an expansion rather than a variable.

Problematic code:

MYVAR=foo
export $MYVAR

Correct code:

MYVAR=foo
export MYVAR

Rationale:

export takes a variable name, but shellcheck has noticed that you give it an expanded variable instead. The problematic code does not export MYVAR but a variable called foo if any.

Exceptions:

If you do want to export the variable's value, e.g. due to indirection, you can disable this message with a directive:

# shellcheck disable=SC2163
export "$MYVAR"
Clone this wiki locally