Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Шаблоны. Если же нужно работать сразу с несколькими объектами, например, перемещать группу файлов в другой каталог

Если же нужно работать сразу с несколькими объектами, например, перемещать группу файлов в другой каталог, перечислять их все в качестве параметров команды перемещения будет неэффективно. Необходим способ задать одно «общее» имя для группы файлов, с которыми будет работать команда. В подавляющем большинстве случаев это можно сделать при помощи шаблона.

Шаблон в командном интерпретаторе используется примерно в тех же целях, что и регулярное выражение: для поиска строк определенной структуры среди множества разнообразных строк. В отличие от регулярного выражения, шаблон всегда примеряется к строке целиком, кроме того, он устроен значительно проще (а значит, и беднее).

Символы в шаблоне разделяются на обычные и специальные. Обычные символы соответствуют таким же символам в строке, а специальные — обрабатываются особым образом:

· Шаблону, состоящему только из обычных символов, соответствует единственная строка, состоящая из тех же символов в том же порядке. Например, шаблону «abc» соответствует строка abc, но не aBc или ABC, потому что большие и маленькие буквы различаются.

· Шаблону, состоящему из единственного спецсимвола «*», соответствует любая строка любой длины (в том числе и пустая).

· Шаблону, состоящему из единственного спецсимвола «?», соответствует любая строка длиной в один символ, например, a, + или @, но не ab или 8888.

· Шаблону, состоящему из любых символов, заключенных в квадратные скобки «[» и «]» соответствует строка длиной в один символ, причем этот символ должен встречаться среди заключенных в скобки. Например, шаблону «[bar]» соответствуют только строки a, b и r, но не c, B, bar или ab. Символы внутри скобок можно не перечислять полностью, а задавать диапазон, в начале которого стоит символ с наименьшим ASCII-кодом, затем следует «-», а затем — символ с наибольшим ASCII-кодом. Например, шаблону «[0-9a-fA-F]» соответствует одна шестнадцатеричная цифра (скажем, 5, e или C). Если после «[» в шаблоне следует «!», то ему соответствует строка из одного символа, не перечисленного между скобками.

· Шаблону, состоящему из нескольких частей, соответствует строка, которую можно разбить на столько же подстрок (возможно, пустых), причем первая подстрока будет отвечать первой части шаблона, вторая — второй и т. д. Например, шаблону «a*b?c» будут соответствовать строки ab@c («*» соответствует пустая подстрока), a+b=c и aaabbc, но не будут соответствовать abc («?» соответствует подстрока c, а для «c» соответствия не находится), @ab@c (нет соответствия для «a») или aaabbbc (из трех b первое соответствует «b», второе — «?», а вот третье приходится на «c»).

Шаблоны используются в нескольких конструкциях shell. Главное место их применения — командная строка. Если оболочка «видит» в командной строке шаблон, она немедленно заменяет его списком файлов, имена которых ему соответствуют. Команда, которая затем вызывается, получает в качестве параметров список файлов уже без всяких шаблонов, как если бы этот список пользователь ввел вручную.

<== предыдущая лекция | следующая лекция ==>
Параметры | Программное окружение
Поделиться с друзьями:


Дата добавления: 2014-01-11; Просмотров: 342; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.