mirror of
https://github.com/koalaman/shellcheck.git
synced 2025-10-03 19:29:44 +08:00
Created SC2291 (markdown)
37
SC2291.md
Normal file
37
SC2291.md
Normal file
@@ -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!
|
Reference in New Issue
Block a user