Created SC2130 (markdown)

koalaman
2014-05-10 12:50:32 -07:00
parent 01c6880f7e
commit 4dd476ab47

19
SC2130.md Normal file

@@ -0,0 +1,19 @@
## -eq is for integer comparisons. Use = instead.
### Problematic code:
[[ $foo -eq "Y" ]]
### Correct code:
[[ $foo = "Y" ]]
### Rationale:
Shells have two sets of comparison operators: for integers (`-eq`, `-gt`, ...) and strings (`=`, `>`, ...). ShellCheck has noticed that you're using an integer comparison with string data.
If you are in fact comparing integers, double check your parameters. Certain mistakes like `$$foo` or `${bar}}` can introduce non-numeric characters into otherwise numeric arguments.
### Contraindications
None.