Bash - командный интерпретатор GNU Bourne

Подстановка имен файлов


После разбиения на слова, если только не установлена опция -f, командный интерпретатор bash просматривает каждое слово в поисках символов *, ?, ( и [. Если найден любой из этих символов, слово считается шаблоном и заменяется упорядоченным по алфавиту списком имен файлов, соответствующих шаблону. Если соответствующие имена файлов не найдены и опция командного интерпретатора отключена, слово остается без изменений. Если опция nullglob установлена и соответствующие файлы не найдены, слово удаляется. Если включена опция командного интерпретатора , сопоставление выполняется без учета регистра алфавитных символов. Если шаблон используется для подстановки имен файлов, символ "." в начале имени или сразу после косой черты должен сопоставляться явно, если только не установлена опция интерпретатора . При сопоставлении имен файлов косые черты всегда должны сопоставляться явно. В других случаях символ "." обрабатывается как любые другие символы. См. описание опций командного интерпретатора , и ниже в разделе "".

Переменная командного интерпретатора GLOBIGNORE может использоваться для ограничения множества имен файлов, соответствующих шаблону. Если переменная GLOBIGNORE установлена, каждое сопоставившееся имя файла, соответствующее также одному из шаблонов, заданных в GLOBIGNORE, удаляется из списка сопоставившихся. Имена файлов "." и ".." игнорируются всегда, даже если установлена переменная GLOBIGNORE. Однако при установке переменной GLOBIGNORE автоматически устанавливается опция интерпретатора , так что все остальные имена файлов, начинающиеся с ".", будут подставлены. Для получения старого поведения - игнорирования имен файлов, начинающихся с ".", - задайте ".*" как один из шаблонов в переменной GLOBIGNORE. Опция отключается, если переменная GLOBIGNORE не установлена.



Содержание раздела