SC2290 – ShellCheck Wiki

See this page on GitHub


Remove spaces around = to assign.

Problematic code:

export LC_ALL = "POSIX"

Correct code:

export LC_ALL="POSIX"


Parameters to export, declare, local, typeset and readonly may not have spaces around the = or += operator. This is the same as for regular variable assignments:

export var = value   # Invalid: spaces around =
export var =value    # Invalid: space before =
export var= value    # Invalid: space after =
export var=value     # Valid

This is because each individual argument to these commands is interpreted as a string in the format name=value. By adding spaces, you are instead passing the three strings var, =, value, none of which follow this format.



ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.