SC2125
Nathan Arthur edited this page Jul 29, 2021
·
4 revisions
foo={1..9}
echo "$foo"foo="/some/path/*"
echo "$foo"foo=( {1..9} )
echo "${foo[@]}"foo=(/some/path/*)
echo "${foo[@]}"Note that either of these will trigger SC3030 ("In POSIX sh, array references are undefined") if you are using sh and not e.g. bash.
echo *.png {1..9} expands to all png files and numbers from 1 to 9, but var=*.png or var={1..9} will just assign the literal strings '*.png' and '{1..9}'.
To make the variable contain all png files or 1 through 9, use an array as demonstrated.
If you intended to assign these values as literals, quote them (e.g. var="*.png").
None.