.\" Copyright (c) 1989, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Guido van Rossum. .\" %sccs.include.redist.man% .\" .\" @(#)fnmatch.3 5.3 (Berkeley) 04/19/91 .\" .Dd .Dt FNMATCH 3 .Os .Sh NAME .Nm fnmatch .Nd match filename or pathname .Sh SYNOPSIS .Fd #include .Ft int .Fn fnmatch "const char *pattern" "const char *string" "int flags" .Sh DESCRIPTION The .Fn fnmatch function matches patterns according to the rules used by the shell. It checks the string specified by the .Fa string argument to see if it matches the pattern specified by the .Fa pattern argument. .Pp The .Fa flags argument modifies the interpretation of .Fa pattern and .Fa string . The value of .Fa flags is the bitwise inclusive .Tn OR of any of the following constants, which are defined in the include file .Pa unistd.h . .Bl -tag -width FNM_PATHNAME .It Dv FNM_PATHNAME Slash characters in .Fa string must be explicitly matched by slashes in .Fa pattern . If this flag is not set, then slashes are treated as regular characters. .It Dv FNM_QUOTE Every occurrence of a backslash .Pq Ql \e followed by a character in .Fa pattern is replaced by that character. This is done to negate any special meaning for the character. .El .Sh RETURN VALUES If .Fa string matches the pattern specified by .Fa pattern , then .Fn fnmatch returns zero. Otherwise, .Fn fnmatch returns nonzero. .Sh SEE ALSO .Xr sh 1 , .Xr glob 3 , .Xr wordexp 3 , .Xr regexp 3 .Sh HISTORY The .Fn fnmatch function is .Ud . .Sh BUGS Quotes and slashes in range patterns are not handled correctly. .Pp The pattern .Ql * matches the empty string, even if .Dv FNM_PATHNAME is specified.