A number of characters are interpreted by the Unix shell before
any other action takes place. These characters are known as wildcard
characters. Usually these characters are used in place of filenames
or directory names.
* An asterisk matches any number of characters
in a filename, including none.
? The question mark matches any single
[ ] Brackets enclose a set of characters, any
one of which may match a single character
at that position.
- A hyphen used within [ ] denotes a range of
~ A tilde at the beginning of a word expands
to the name of your home directory. If you
append another user's login name to the
character, it refers to that user's home
Here are some examples:
1 Throughout this paper guy is assumed
to be gender neutral unless otherwise stated.
- cat c* displays any file whose name begins with c
including the file c, if it exists.
- ls *.c lists all files that have a .c extension.
- cp ../rmt?. copies every file in the parent directory
that is four characters long and begins with rmt to
the working directory. (The names will remain the same.)
- ls rmt lists every file that begins with rmt
and has a 3, 4, 5, 6, or 7 at the end.
- ls rmt[3-7] does exactly the same thing as the previous example.
- ls ~ lists your home directory.
- ls ~hessen lists the home directory of the
guy1 with the user id hessen.
© 1993-1998 Christopher C. Taylor