Простіше кажучи, глобус відноситься до відповідності шаблону. Bash використовує прості глобулі, як, echo l*що розширюються на список файлів у поточному каталозі, що починаються з літери l. Звичайно, як ви здогадаєтесь, це просто і обмежено.
Введіть extglob. Як ви здогадаєтесь, це означає extended globbing. Ця опція дозволяє більш досконале узгодження шаблону. Від man bash:
extglob If set, the extended pattern matching features described
above under Pathname Expansion are enabled.
І трохи до цього:
If the extglob shell option is enabled using the shopt builtin, several
extended pattern matching operators are recognized. In the following
description, a pattern-list is a list of one or more patterns separated
by a |. Composite patterns may be formed using one or more of the
following sub-patterns:
?(pattern-list)
Matches zero or one occurrence of the given patterns
*(pattern-list)
Matches zero or more occurrences of the given patterns
+(pattern-list)
Matches one or more occurrences of the given patterns
@(pattern-list)
Matches one of the given patterns
!(pattern-list)
Matches anything except one of the given patterns
Існує безліч способів extglobїх використання. У журналі Linux та у вікі Грега наведено кілька хороших прикладів .