I have a script that I normally run as Bash. I checked the script using shellcheck and received the following admonitions:
In dar.incremental-new line 70:
${CRONMODE} ${TEST} \
^---------^ SC2086 (info): Double quote to prevent globbing and word splitting.
^-----^ SC2086 (info): Double quote to prevent globbing and word splitting.
Did you mean:
"${CRONMODE}" "${TEST}" \
In dar.incremental-new line 101:
${CRONMODE} \
^---------^ SC2086 (info): Double quote to prevent globbing and word splitting.
Did you mean:
"${CRONMODE}" \
In dar.incremental-new line 135:
${CRONMODE} ${TEST} \
^---------^ SC2086 (info): Double quote to prevent globbing and word splitting.
^-----^ SC2086 (info): Double quote to prevent globbing and word splitting.
Did you mean:
"${CRONMODE}" "${TEST}" \
In dar.incremental-new line 166:
${CRONMODE} \
^---------^ SC2086 (info): Double quote to prevent globbing and word splitting.
Did you mean:
"${CRONMODE}" \
For more information:
https://www.shellcheck.net/wiki/SC2086 -- Double quote to prevent globbing ...
However, when I make the requested changes, the application to which they are sent “dar - Disk Archiver” fails during parsing because the shell (can be posix or bash) creates an entry in the invocation when a variable is null. If I do not make the requested changes, the application operates as it should.
I am not sure about to which player I should complain (openSUSE, dar, shellcheck).