diff --git a/SC2289.md b/SC2289.md new file mode 100644 index 0000000..daf9641 --- /dev/null +++ b/SC2289.md @@ -0,0 +1,32 @@ +## This is interpreted as a command name containing a linefeed. Double check syntax. + +(or tab) + +### Problematic code: + +```sh +''' +This script greets the planet +''' +echo "Hello World" +``` + +### Correct code: + +```sh +# This script greets the planet +echo "Hello World" +``` +### Rationale: + +ShellCheck found a command name containing an especially unusual character like a tab or linefeed. This is most likely due to a syntax issue. + +In the example, this was due to a Python style documentation string, which a shell will merely interpreted as a multi-line command name sandwiched between two empty strings. + +### Exceptions: + +If you have a command name that *does* contain a tab or linefeed you can ignore this message, but... wow. + +### Related resources: + +* Help by adding links to BashFAQ, StackOverflow, man pages, POSIX, etc! \ No newline at end of file