Pattern: Use of Unicode double quote
Issue: -
Various software and word processors frequently replaces ASCII quotes ""
with fancy Unicode quotes, “”
. To bash, Unicode quotes are considered regular literals and not quotes at all.
Simply delete them and retype them in your editor.
Example of incorrect code:
echo “hello world”
Example of correct code:
echo "hello world"
If you really want literal Unicode double quotes, you can put them in single quotes (or Unicode single quotes in double quotes) to make shellcheck ignore them, e.g.,
printf 'Warning: “wakeonlan” is not installed.\n'