У більшості сучасних операційних систем, у тому числі і Linux, можна використовувати при завданні імен файлів шаблони (wild cards). Використовують такі шаблони:
Символ
| Значення
|
*
| Довільний набір символів, крім крапки на початку назви файла
|
?
| Довільний одиночний символ
|
[]
| Один символ з визначеного діапазону символів
|
Символ * (зірочка)- це один з найбільш часто вживаних символів – шаблонів. Він визначає довільну кількість довільних символів. Наприклад, рядок b* означає усі файли, назви якмх починаються на b. В одному виразі можна використовувати стівльки зірочок, скільки потрібно для визначення потрібної множини файлів. Наприклад, вираз *yy*.gif відповідає довільній назві файлу, що має yy в центральній частині свого імені.
Треба бути уважним при використанні символу пробілу та *. Наприклад, команди lp *.txt та lp * txt будуть опрацьовані системою по-різному. Перша команда виведе на друк усі файли біжучого каталогу, що мають розширення txt. Натомість друга команда, в якій між символами * та t є пробіл сприйме введене як два різні аргументи (* та txt). Відповідно, будуть виведені на друк усі файли каталогу (*) та файл, що має назву txt.
При виводі файлів з використанням символу * є одна особливість. Файли, назви яких починаються з крапки (які також чспсто вважають прихованими файлами) не відображаються. Для їх відображення необхідно явно задати крапку в імені. Наприклад, файл з іменем .reportrc може бути відображено, якщо використати таку команду:
ls .*rep*
Символ ? використовують для позначення окремого символа. Нехай у робочому каталозі є файли report1, report2, report10, report.dft, report.fin
Варіанти застосування символу шаблону ? та результуючий вивід подано у таблиці
Команда
| Результат
|
ls report?
| report1
report2
|
ls *.???
| report.dft
report.fin
|
Вираз [] використовують для завдання певного діапазону символів. Нехай на диску існують файли rep1,rep2,rep3, repx. Необхідно вибрати перші три. Для цього можна застосувати шаблон імені job[123]
Вивести усі назви файлів, що починаються з заглавної букви можна застосувавши такий вираз:
ls [A-Z]*
Нехай є файли з назвами sales.91, sales.92, sales.93. Їх потрібно перенести у каталог obsolete. Використовуючи символи шаблонів це можна зробити таким чином:
ср sales.9[0-2] obsolete
Як і символ шаблону ? цифри у квадратних дужках [] означають рівно один символ. Можна перерахувати допустимі символи [123], або вказати діапазон їх значень [1-2]. Можна також вказати декілька діапазонів. Наприклад, вираз [A-Z, a-z] відповідає усім буквам алфавіту.