Created SC2175 (markdown)

koalaman
2016-01-25 19:43:11 -08:00
parent 109ff6bfa0
commit 45ba8a5f3b

22
SC2175.md Normal file

@@ -0,0 +1,22 @@
## Quote this invalid brace expansion since it should be passed literally to eval
### Problematic code:
```sh
eval echo {1..$n}
```
### Correct code:
```sh
eval "echo {1..$n}"
```
### Rationale:
Using `eval somecommand {1..$n}` depends both on bash silently failing to interpret the brace expansion, and on it passing failing brace expansions literally.
Rather than depending on these questionable features (which already behave differently in other shells), use the explicit, predictable way of passing values literally: quoting.
### Exceptions:
None.