Created SC2266 (markdown)

Vidar Holen
2022-11-02 20:20:59 -07:00
parent c9bddfd540
commit cc13ad3334

30
SC2266.md Normal file

@@ -0,0 +1,30 @@
## Use && for logical AND. Single & will background and return true.
### Problematic code:
```sh
if [ "$1" = "--verbose" ] | [ "$1" = "-v" ]
then
verbose=1
fi
```
### Correct code:
```sh
if [ "$1" = "--verbose" ] || [ "$1" = "-v" ]
then
verbose=1
fi
```
### Rationale:
ShellCheck found a `test` command followed by a `|`. This was undoubtedly intended as a logical OR (`||`).
### Exceptions:
None
### Related resources:
* Help by adding links to BashFAQ, StackOverflow, man pages, POSIX, etc!