SC2072 – ShellCheck Wiki

See this page on GitHub


Decimals are not supported. Either use integers only, or use bc or awk to compare.

Problematic code:

[[ 2 -lt 3.14 ]]

Correct code:

[[ 200 -lt 314 ]]                   # Use fixed point math
[[ $(echo "2 < 3.14" | bc) == 1 ]]  # Use bc


Bash and Posix sh does not support decimals in numbers. Decimals should either be avoided, or compared using a tool that does support them.


If the strings happen to be version numbers and you're using <, or > to compare them as strings, and you consider this an acceptable thing to do, then you can ignore this warning.

ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.