| Skip Navigation Links | |
| Exit Print View | |
![]() | man pages section 3: Basic Library Functions Oracle Solaris 11 Information Library |
enable_extended_FILE_stdio(3C)
posix_spawnattr_getschedparam(3C)
posix_spawnattr_getschedpolicy(3C)
posix_spawnattr_getsigdefault(3C)
posix_spawnattr_getsigignore_np(3C)
posix_spawnattr_getsigmask(3C)
posix_spawnattr_setschedparam(3C)
posix_spawnattr_setschedpolicy(3C)
posix_spawnattr_setsigdefault(3C)
posix_spawnattr_setsigignore_np(3C)
posix_spawnattr_setsigmask(3C)
posix_spawn_file_actions_addclose(3C)
posix_spawn_file_actions_addclosefrom_np(3C)
posix_spawn_file_actions_adddup2(3C)
posix_spawn_file_actions_addopen(3C)
posix_spawn_file_actions_destroy(3C)
posix_spawn_file_actions_init(3C)
pthread_attr_getdetachstate(3C)
pthread_attr_getinheritsched(3C)
pthread_attr_getschedparam(3C)
pthread_attr_getschedpolicy(3C)
pthread_attr_setdetachstate(3C)
pthread_attr_setinheritsched(3C)
pthread_attr_setschedparam(3C)
pthread_attr_setschedpolicy(3C)
pthread_barrierattr_destroy(3C)
pthread_barrierattr_getpshared(3C)
pthread_barrierattr_setpshared(3C)
pthread_condattr_getpshared(3C)
pthread_condattr_setpshared(3C)
pthread_cond_reltimedwait_np(3C)
pthread_key_create_once_np(3C)
pthread_mutexattr_getprioceiling(3C)
pthread_mutexattr_getprotocol(3C)
pthread_mutexattr_getpshared(3C)
pthread_mutexattr_getrobust(3C)
pthread_mutexattr_setprioceiling(3C)
pthread_mutexattr_setprotocol(3C)
pthread_mutexattr_setpshared(3C)
pthread_mutexattr_setrobust(3C)
pthread_mutex_getprioceiling(3C)
pthread_mutex_reltimedlock_np(3C)
pthread_mutex_setprioceiling(3C)
pthread_rwlockattr_destroy(3C)
pthread_rwlockattr_getpshared(3C)
pthread_rwlockattr_setpshared(3C)
pthread_rwlock_reltimedrdlock_np(3C)
pthread_rwlock_reltimedwrlock_np(3C)
pthread_rwlock_timedrdlock(3C)
pthread_rwlock_timedwrlock(3C)
rctlblk_get_enforced_value(3C)
- match filename or path name
#include <fnmatch.h>intfnmatch(const char *pattern,const char *string,intflags);
Thefnmatch() function matches patterns as described on thefnmatch(5) manual page. It checks thestring argument to see if it matches thepatternargument.
Theflags argument modifies the interpretation ofpattern andstring. It isthe bitwise inclusive OR of zero or more of the following flagsdefined in the header <fnmatch.h>.
If set, a slash (/) character instring will be explicitly matched by a slash inpattern; it will not be matched by either the asterisk (*) or question-mark (?) special characters, nor by a bracket ([ ]) expression.
If not set, the slash character is treated as an ordinary character.
An alias ofFNM_PATHNAME provided for a better compatibility with other operating systems.
If not set, a backslash character (\) inpattern followed by any other character will match that second character instring. In particular, “\\” will match a backslash instring.
If set, a backslash character will be treated as an ordinary character.
If set, a leading period instring will match a period inpattern; where the location of “leading” is indicated by the value ofFNM_PATHNAME:
IfFNM_PATHNAME is set, a period is “leading” if it is the first character instring or if it immediately follows a slash.
IfFNM_PATHNAME is not set, a period is “leading” only if it is the first character ofstring.
If set, during matching, case is ignored yielding case-insensitive matching on characters based on the case folding defined for the current locale or, if that does not exist, tolower case conversions of the current locale.
An alias ofFNM_IGNORECASE provided for a better compatibility with other operating systems.
If set, matching is done with string only until all pattern expressions in pattern argument are consumed. Any remaining characters at string starting with slash character (/) are simply ignored and do not affect the matching result.
If not set, no special restrictions are placed on matching a period.
Ifstring matches the pattern specified bypattern, thenfnmatch() returns0.If there is no match,fnmatch() returnsFNM_NOMATCH, which is defined inthe header <fnmatch.h>. If an error occurs,fnmatch() returns another non-zero value.
Thefnmatch() function has two major uses. It could be used byan application or utility that needs to read a directory and applya pattern against each entry. Thefind(1) utility is an example ofthis. It can also be used by thepax(1) utility to processitspattern operands, or by applications that need to match strings in asimilar manner.
The namefnmatch() is intended to implyfilename match, rather thanpathnamematch. The default action of this function is to match filenames, ratherthan path names, since it gives no special significance to the slashcharacter. With theFNM_PATHNAME flag,fnmatch() does match path names, but without tildeexpansion, parameter expansion, or special treatment for period at the beginning ofa filename.
Thefnmatch() function can be used safely in multithreaded applications, as longassetlocale(3C) is not being called to change the locale.
While theFNM_CASEFOLD,FNM_FILE_NAME,FNM_IGNORECASE, andFNM_LEADING_DIR flags are provided and supportedfor a better compatibility with some other operating systems, use of themmay make your program source code slightly less portable and portable only tothe operating systems that support the mentioned flags.
Example 1 A path name matching
The following example matches all file names under/opt/MyApp1.0/ that end withdata:
result = fnmatch("/opt/MyApp1.0/*.data", pname, FNM_PATHNAME);Example 2 A case-insensitive file name matching
The following example matches file names pointed to byfname that hasmyfile as prefix in any case combination:
result = fnmatch("myfile*", fname, FNM_IGNORECASE);Example 3 Match all path names with a common set of parent names
The following example matches path names pointed to bypname that hasa common set of parent path names of/opt/l*/MyApps and, in doingso, also ensures slash characters are explicitly matched:
result = fnmatch("/opt/l*/MyApps", pname, (FNM_PATHNAME | FNM_LEADING_DIR));For instance, the above will match/opt/lib/MyApps/test/test.txt and/opt/local/MyApps/config but not/opt/lib/locale/MyApps.
Seeattributes(5) for descriptions of the following attributes:
|
find(1),pax(1),glob(3C),setlocale(3C),wordexp(3C),attributes(5),fnmatch(5),standards(5)
Copyright © 2011, Oracle and/or its affiliates. All rights reserved.Legal Notices | ![]() ![]() |