Шаблоны имени файла (wildcards) командного интерпретатора
Часто Вам нужно, чтобы команда работала с группой файлов без набора всех их имен. Для описания группы файлов используются шаблоны имени файла командного интерпретатора:
*
Соответствует любой группе из нуля и более символов.
Не соответствует имени файла с "." в начале.
?
Соответствует ровно одному символу.
[...]
Соответствует ровно одному символу из тех, что заключены в скобки.
[a-z]
Соответствует ровно одному символу из тех, что между a и z.
[^...]
Соответствует ровно одному символу, если он не среди тех, что перечислены в скобках (символ "^" - спецсимвол и здесь на соответствие не проверяется).
Для примера попробуйте следующие команды и поразмышляйте над полученными результатами:
$ mkdir junk; cd junk; $ touch 1.txt 2.txt 3.c 4.h .5.txt $ echo *.txt 1.txt 2.txt $ echo * 1.txt 2.txt 3.c 4.h $ echo *.[hc] 3.c 4.h $ echo .* . .. .5.txt $ echo .[^.]* .5.txt $ echo [^1-3]* 4.h $ cd ..; rmdir junk