>From "man bash"
When used with [[, The < and > operators sort lexicographically
using the current locale.
You want (( and )):
$ if (( 1000 > 200 )); then echo pass; else echo wierd; fi
pass
Daniel.
On Fri, Nov 19, 2010 at 19:45, john.ruckstuhl <[email protected]>wrote:
> In bash, a comparison inside "[["/"]]" is lexicographic not numeric?
> This isn't what I expected.
> Which part of the documentation would set me straight? If someone
> could quote the fine manual, that would be great.
>
> $ if [[ 2000 > 200 ]]; then echo pass; else echo wierd; fi
> pass
>
> $ if [[ 1000 > 200 ]]; then echo pass; else echo wierd; fi
> wierd
>
> $ set | grep BASH_VERSION
> BASH_VERSION='3.2.51(24)-release'
>
> Thanks,
> John R.
>