UNIX gives you various ways to be lazy, and one of the most useful is in the use of wildcards. If you are familiar with wildcards you may have thought that UNIX commands must be written to a standard so that they treat the wildcard characters in the same way. UNIX commands do have many standards, but this is not one of them. UNIX commands in general wouldn't know a wildcard character if it had “I AM A WILDCARD” tattooed across its chest.
Wildcards are, instead, dealt with by the shell. They are used as a way of matching filenames; the man pages refer to this as File Name Generation.
The wildcard characters are:
The asterisk (*) matches zero or more occurrences of any character. The question mark (?) matches a single character. ...