Created SC2168 (markdown)

koalaman
2015-10-10 21:05:34 -07:00
parent a53d3d3e3b
commit 0d9ab87a68

22
SC2168.md Normal file

@@ -0,0 +1,22 @@
## 'local' is only valid in functions.
### Problematic code:
```sh
local foo=bar
echo "$foo"
```
### Correct code:
```sh
foo=bar
echo "$foo"
```
### Rationale:
In Bash, `local` can only be used in functions. In other contexts, it's an error.
### Exceptions:
It's possible to source files containing `local` from a function context but not from any other context. This is not good practice, but in these cases you can [[ignore]] this error.