-
Notifications
You must be signed in to change notification settings - Fork 1.9k
SC2293
Vidar Holen edited this page Jul 31, 2021
·
3 revisions
eval "$MYCOMMAND ${@@Q}"eval "$MYCOMMAND ${*@Q}"ShellCheck noticed that you are calling eval and including an escaped array. However, the array is passed as multiple arguments and relies on being implicitly joined together to form a single shell string, which eval can then evaluate.
Instead, prefer building your shell string with explicit string concatenation by using * instead of @ for the index, such as ${*@Q} or ${array[*]@Q}.
This suggestion is equivalent to SC2124, but for eval arguments rather than string variables.
None.
- Help by adding links to BashFAQ, StackOverflow, man pages, POSIX, etc!