diff --git a/SC2291.md b/SC2291.md new file mode 100644 index 0000000..8edc52e --- /dev/null +++ b/SC2291.md @@ -0,0 +1,37 @@ +## Quote repeated spaces to avoid them collapsing into one. + +### Problematic code: + +```sh +echo Hello World +``` + +### Correct code: + +```sh +echo "Hello World" +``` + +### Rationale: + +ShellCheck found multiple unquoted spaces between words passed to `echo`. Due to the way arguments are interpreted and passed in the shell, these will collapse into a single space: + +``` +$ echo Hello World +Hello World +``` + +If you want to output multiple spaces, such as when creating a notice or banner, make sure the spaces are quoted, e.g. by adding (or extending) double quotes to include them: + +``` +$ echo "Hello World" +Hello World +``` + +### Exceptions: + +If you're aware of this behavior and didn't want multiple spaces to show up in the output, you can either remove the unnecessary spaces or [[ignore]] this issue. + +### Related resources: + +* Help by adding links to BashFAQ, StackOverflow, man pages, POSIX, etc! \ No newline at end of file