The shells' 
[]
 (square bracket) wildcards will match a range of files. For instance, if you have files named 
afile
, 
bfile
, 
cfile
, and 
dfile
, you can print the first three by typing:
%lpr [a-c]file
Now, let's say that you want to create some more files called efile , ffile , gfile , and hfile . What's wrong with typing the command line below? Try it. Instead of vi , you can use your favorite editor or the touch ( 21.7 ) command:
%vi [e-h]fileDoesn't make those four files %lsafile bfile cfile dfile
Stumped? Take a look at article 1.16 about wildcard matching.
The answer: wildcards can't match names that don't exist yet. That's especially true with a command like 
touch ?file
 (
21.7
)
 or 
touch *file
-think how many filenames those wildcards could possibly create!
Article 
9.5
 explains shell 
{ }
 operators that solve this problem.
-