in reply to glob pattern matching

glob is a string generator. Other than ? and *, generating the strings neither requires nor warrants disk access.

$ perl -le'print for glob "{a,b}{c,d}{e,f}"' ace acf ade adf bce bcf bde bdf

You can always use -e if you want to check if the strings you generated matches file names.

$ touch a{ce,df} $ perl -le'print for grep -e, glob "{a,b}{c,d}{e,f}"' ace adf

Note how I used a glob to create files. If globs worked the way you wanted, I couldn't have done that.