array+=("item")to append items to an array.
var=(one two) var+=three
var=(one two) var+=( three )
It looks like you are trying to append a string to an array with
var+=string. This instead appends to the first element of the array (equivalent to
In the problematic code, the array will therefore contain
Instead, append an array to the array with
var+=( elements ). This will append the new items to the array.
In the correct code, it will contain
three as expected.
If ShellCheck mistakenly thinks the variable is an array when it's not (e.g. because the same name was used in a different context), you can ignore this error.
ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.