Skip to content
Joachim Ansorg edited this page Nov 12, 2021 · 2 revisions

Use [[ ]] or quote arguments to -v to avoid glob expansion.

Problematic code:

[ -v foo[0] ] 

Correct code:

[ -v 'foo[0]' ]

Rationale:

With [, arguments will undergo glob expansion. If a file foo0 exists when the problematic code is run, it will check for the variable foo0 instead of the array entry foo[0]. If there additionally exists a foo1, it will simply fail with an error.

Use [[ ]] or quote the argument.

Exceptions:

None.

ShellCheck

Each individual ShellCheck warning has its own wiki page like SC1000. Use GitHub Wiki's "Pages" feature above to find a specific one, or see Checks.

Clone this wiki locally