-
Notifications
You must be signed in to change notification settings - Fork 1.8k
SC1117
Note: this warning has been retired due to being too pedantic
printf "%s\n" "Hello"
printf "%s\\n" "Hello"
or alternatively, with single quotes:
printf '%s\n' "Hello"
In a double quoted string, you have escaped a character that has no special behavior when escaped. Instead, it's invoking the fallback behavior of being interpreted literally.
Instead of relying on this implicit fallback, you should escape the backslash explicitly. This makes it clear that it's meant to be passed as a literal backslash in the string parameter.
None. This is a stylistic issue which can be ignored. But can you name the 5 characters that are special when escaped in double quotes?
They are $, `, ", \, or newline. More infos are available in the bash manual.
This warning is no longer emitted as of d8a32da07 (strictly after v0.5).
The number of harmlessly affected printf
, sed
and grep
statements was significantly higher than the number of actual unexpanded escape sequences. It may return some day under a -pedantic
type flag.