place="world" printf hello $place
place="world" printf "hello %s\n" "$place"
ShellCheck has noticed that you're using a printf with multiple arguments, but where the first argument has no %s or equivalent variable placeholders.
printf
%s
echo accepts zero or more strings to write, e.g. echo hello world.
echo
echo hello world
printf instead accepts one pattern/template with zero or more %s-style placeholders, and one argument for each placeholder.
Rewrite your command using the right semantics, otherwise all arguments after the first one will be ignored:
$ printf hello world\\n hello $ printf "hello world\n" hello world $ printf "hello %s\n" "world" hello world
If you wanted a no-op, use : instead.
:
: ${place=world}
There was an error while loading. Please reload this page.