Provided by: manpages-ru-dev_4.21.0-2_all 

ИМЯ
fnmatch - сравнивает имя файла или путь
LIBRARY
Standard C library (libc, -lc)
СИНТАКСИС
#include <fnmatch.h>
int fnmatch(const char *pattern, const char *string, int flags);
ОПИСАНИЕ
Функция fnmatch() проверяет, совпадает ли параметр string с параметром pattern, который является
подстановочным шаблоном оболочки (смотрите glob(7)).
Аргумент flags изменяет поведение; он является битовой маской и может содержать следующие флаги:
FNM_NOESCAPE
Если этот флаг установлен, то обратная косая черта воспринимается как простой символ, а не
специальный.
FNM_PATHNAME
Если этот флаг установлен, то косая черта в строке string будет совпадать только с косой чертой в
шаблоне pattern, но не с метасимволом звёздочка (*) или вопросительным знаком (?) и не
последовательностью в квадратных скобках ([]), содержащую косую черту.
FNM_PERIOD
Если этот флаг установлен, то начальная точка в строке string должна сравниваться именно с точкой
в шаблоне pattern. Точка считается начальной, если она является первым символом в строке string,
или если установлен флаг FNM_PATHNAME и точка следует сразу за косой чертой.
FNM_FILE_NAME
Синоним FNM_PATHNAME в GNU.
FNM_LEADING_DIR
Если этот флаг (расширение GNU) установлен, то строка считается совпавшей с шаблоном, если
совпадает начальный сегмент строки string, который следует сразу за косой чертой. Этот флаг для
внутреннего использования glibc и не всегда реализуется.
FNM_CASEFOLD
Если этот флаг (расширение GNU) установлен, то выражения сравниваются без учёта регистра символов.
FNM_EXTMATCH
Если этот флаг (расширение GNU) установлен, то поддерживаются расширенные шаблоны из 'ksh' и
теперь поддерживаемые другими оболочками. В расширенном формате pattern-list предоставляет собой
список шаблонов, разделённых '|', входит следующее:
'?(pattern-list)'
Шаблон совпадает, если ноль или одно вхождение любого шаблона в pattern-list совпадает с входной
строкой string.
'*(pattern-list)'
Шаблон совпадает, если ноль или более вхождений любых шаблонов в pattern-list совпадает с входной
строкой string.
'+(pattern-list)'
Шаблон совпадает, если одно или более вхождений любых шаблонов в pattern-list совпадает с входной
строкой string.
'@(pattern-list)'
Шаблон совпадает, если только одно вхождение любого шаблона в pattern-list совпадает с входной
строкой string.
'!(pattern-list)'
Шаблон совпадает, если входная строка string не совпадает с каким-либо шаблоном в pattern-list.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Возвращает ноль, если строка string совпадает с шаблоном pattern, возвращает FNM_NOMATCH, если строка и
шаблон не совпадают, или другое ненулевое значение, если произошла ошибка.
АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).
┌───────────────────────────────────────────────────────────┬──────────────────────┬────────────────────┐
│ Интерфейс │ Атрибут │ Значение │
├───────────────────────────────────────────────────────────┼──────────────────────┼────────────────────┤
│ fnmatch() │ Безвредность в нитях │ MT-Safe env locale │
└───────────────────────────────────────────────────────────┴──────────────────────┴────────────────────┘
СТАНДАРТЫ
POSIX.1-2001, POSIX.1-2008, POSIX.2. Флаги FNM_FILE_NAME, FNM_LEADING_DIR и FNM_CASEFOLD являются
расширениями GNU.
СМ. ТАКЖЕ
sh(1), glob(3), scandir(3), wordexp(3), glob(7)
ПЕРЕВОД
Русский перевод этой страницы руководства был сделан Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitry
Bolkhovskikh <d20052005@yandex.ru>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>
Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3
или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.
Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо
на man-pages-ru-talks@lists.sourceforge.net.
Linux man-pages 6.03 15 декабря 2022 г. fnmatch(3)