${array[idx]}
(or ${var}[..
to quiet).echo "$array[@]"
echo "${array[@]}"
Some languages use the syntax $array[index]
to access an index of an arrays, but a shell will interpret this as $array
followed by the unrelated literal string (or glob) [index]
.
Curly braces are needed to tell the shell that the square brackets are part of the expansion.
If you want the square brackets to be treated literally or as a glob, use ${var}[idx]
to prevent this warning.
This does not change how the script works, but clarifies your intent to ShellCheck as well as other programmers.
ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.