echo "hello world”
echo "hello world"
Some software, like OS X, Word and WordPress, may automatically replace your regular quotes with slanted Unicode quotes. The shell does not recognize these quotes and will not respect them.
In this case, you have slanted double quotes in a double quoted string. Try deleting and retyping them, and/or disable “smart quotes” in your editor or OS.
If you want to use literal slanted double quotes for typographic reasons, you can put them in single quotes to make ShellCheck ignore them:
printf 'Warning: “wakeonlan” is not installed.\n'
Alternatively, use single slanted Unicode quotes like so:
printf "Warning: ‘wakeonlan’ is not installed.\n"
You can also just ignore this warning.
ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.