This is a Unicode double quote. Delete and retype it.
Problematic code:
echo “hello world”
Correct code:
echo "hello world"
Rationale:
Blog 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.
Status:
This error was retired after 0.4.5. In this version and earlier, ShellCheck parsed slanted quotes as a valid double quote. This meant that the warning could not simply be ignored. It has since been replaced by SC1110 (outside quotes) and SC1111 (inside double-quotes).
Exceptions
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'
-
Installation
-
Usage
-
Integrating and extending
Each individual ShellCheck warning has its own wiki page like SC1000. Use GitHub Wiki's "Pages" feature above to find a specific one, or see Checks.