In one of my systems, when I run ls [:lower:]*, it will list all files that start with a lowercase letter.
In another one, it will give an error:
ls: cannot access [:lower:]*: No such file or directory
There are files that start with a lowercase in the working directory.
Running ls [[:lower:]]* instead, will work on both systems. I'd like to understand why ls [:lower:]* does not work in the second system and what is the proper way to use character classes.
Both are running Bash, but I would like an answer that I can apply to other shells as well.