шаблон пошуку

Шаблони в командних оболонках

Найчастіше використовуються два символу - для заміни будь-якого рядка символів зірочка (*) і для заміни будь-якого одиночного символу знак питання (?).

Знаком питання (?) В шаблоні позначають будь-який одиночний символ. Наприклад, під шаблон otchet. підійдуть файли мають будь-яке розширення з трьох букв, але починаються саме так, як задано в шаблоні. Варіант записи descrip? Ion.pdf знайде файли з заданими ім'ям, але замість знака питання може бути будь-який символ (наприклад, s або t). Очевидно, що завдання шаблонів за допомогою знака питання використовується рідше, ніж використання зірочки.

Передбачено й більш складні правила запису шаблонів. Так, використання квадратних дужок ([]) зі списком можливих значень дозволяє здійснювати більш гнучкий пошук файлів. Нехай потрібно знайти всі файли, імена яких починаються з літери m, при цьому потрібно не враховувати регістр. Тоді шаблон буде виглядати так: [mM] *. Якщо потрібно одночасно знайти файли, що починаються на літери, що йдуть підряд в алфавіті, то можна задати діапазон. Наприклад, під шаблон [m-pM-P]. png підійдуть всі файли з розширенням png, імена яких складаються з чотирьох букв, причому перша буква m або n або o або p без урахування регістру.

Приклади команд на мові POSIX (Bourne) shell:

У програмах управління базами даних, наприклад SQL. замість * використовується знак відсотка%, замість. знак підкреслення _. У Microsoft Access. точніше, в їх скриптових мовах, байдужий символ можуть бути використані у виразах «LIKE».

У регулярних виразах концепція символів-джокерів отримала подальший розвиток. У них є спеціальні позначення не тільки для одного ( «.») І будь-якої кількості (квантіфікатор «*») символів, але і різних класів символів (наприклад, порожні символи «\ s»), альтернативних виразів ( "|") і багато інше.

Іноді при роботі з файлами необхідно або можливо вказувати тільки частина їх імені або розширення. Це робиться, наприклад, для того, щоб в параметрах програми не називати повністю імена всіх файлів, над якими проводиться операція, а виділити їх в групу по якомусь ознакою (зауважимо, що деякі програми працюють не з одиничними файлами, а з групою) . Також буває необхідно знайти файл або файли, у яких невідомі повне ім'я та / або розширення. Для цих цілей використовують так звані шаблони.

Командні оболонки Linux (shell. Bash і ін.), А також різні мови програмування дозволяють виділяти (шукати) з безлічі імен файлів і каталогів певні групи за допомогою використання так званих шаблонів імен файлів. З шаблоном командна оболонка порівнює черговий файл, і якщо він «вписався» в цей шаблон, то буде врахований, якщо немає - то буде пропущений. Грубо, шаблон можна порівняти з якоюсь коробкою, в яку влізе не кожен предмет і не тільки через розміри, а й з-за неспівпадання вигинів коробки і предмета.

Схожі статті