I'm just curious here..
Why do you think
Is out of order? Or strange at all?
It's obviously sorted alphanum.
You expected to sort by comparison, by.. is two greater than, 100. It's not greater ammount, but 100 does come before 2 alphanumerically. Just wanted to point that out- because this is a bug in the coder, not the code.
If you want to be able to sort files like these as you expect, one thing to do is name them appropriately...
# rename ' ' ' 00' File\ ?; rename ' ' ' 0' File\ ??
# ls -1 File\ *