FNMATCH(3) manual page
Table of Contents
fnmatch - match filename or pathname
#include <fnmatch.h>
int fnmatch(const char *pattern, const char *string, int flags);
The
fnmatch() function checks whether the string argument matches the pattern
argument, which is a shell wildcard pattern.
The flags argument modifies
the behavior; it is the bitwise OR of zero or more of the following flags:
- FNM_NOESCAPE
- If this flag is set, treat backslash as an ordinary character,
instead of an escape character.
- FNM_PATHNAME
- If this flag is set, match
a slash in string only with a slash in pattern and not by an asterisk (*)
or a question mark (?) metacharacter, nor by a bracket expression ([])
containing a slash.
- FNM_PERIOD
- If this flag is set, a leading period in
string has to be matched exactly by a period in pattern. A period is considered
to be leading if it is the first character in string, or if both FNM_PATHNAME
is set and the period immediately follows a slash.
- FNM_FILE_NAME
- This is
a GNU synonym for FNM_PATHNAME.
- FNM_LEADING_DIR
- If this flag (a GNU extension)
is set, the pattern is considered to be matched if it matches an initial
segment of string which is followed by a slash. This flag is mainly for
the internal use of glibc and is implemented only in certain cases.
- FNM_CASEFOLD
- If this flag (a GNU extension) is set, the pattern is matched case-insensitively.
Zero if string matches pattern, FNM_NOMATCH if there is no
match or another nonzero value if there is an error.
POSIX.2.
The FNM_FILE_NAME, FNM_LEADING_DIR, and FNM_CASEFOLD flags are GNU extensions.
sh(1)
, glob(3)
, scandir(3)
, wordexp(3)
, glob(7)
This page
is part of release 3.78 of the Linux man-pages project. A description of the
project, information about reporting bugs, and the latest version of this
page, can be found at http://www.kernel.org/doc/man-pages/.
Table of Contents