fnmatch(3)

NOM
fnmatch - Rechercher une correspondance entre un nom de fichier ou un chemin et un motif

BIBLIOTHÈQUE
Bibliothèque C standard (libc, -lc)

SYNOPSIS
#include <fnmatch.h>

int fnmatch(const char *motif, const char *chaîne, int drapeaux);

DESCRIPTION
La fonction fnmatch() vérifie si l'argument chaîne correspond au motif qui est un motif avec des méta-caractères de l'interpréteur de commandes (voir glob(7)).

L'argument drapeaux modifie le comportement de la fonction. C'est un OU binaire entre zéro ou plusieurs des drapeaux suivants :

FNM_NOESCAPE
    Si ce drapeau est défini, traiter la barre oblique inverse « \ » comme un caractère ordinaire et non comme un caractère d'échappement.

FNM_PATHNAME
    Si ce drapeau est défini, ne faire correspondre une barre oblique « / » dans chaîne qu'avec une barre oblique dans motif, et pas avec les méta-caractères « * » ou « ? », ni avec une expression entre crochets « [] » contenant une barre oblique.

FNM_PERIOD
    Si ce drapeau est défini, un point en début de chaîne doit correspondre exactement à un point dans motif. Un point est considéré comme en début de chaîne, s'il est le premier caractère de chaîne, ou si FNM_PATHNAME est défini alors que le point suit immédiatement une barre oblique.

FNM_FILE_NAME
    Il s'agit d'un synonyme GNU de FNM_PATHNAME.

FNM_LEADING_DIR
    Si ce drapeau (une extension GNU) est défini, la correspondance est considérée comme correcte si le motif correspond à un segment initial de la chaîne chaîne suivi d'une barre oblique. Ce drapeau est réservé à un usage interne de la glibc et n'est pas toujours implémenté.

FNM_CASEFOLD
FNM_IGNORECASE (same as FNM_CASEFOLD)
    If this flag is set, the pattern is matched case-insensitively.

FNM_EXTMATCH
    Si ce drapeau (extension GNU) est défini, les motifs étendus sont pris en charge tels qu'introduits par « ksh », et désormais pris en charge par d'autres interpréteurs de commandes. Le format étendu se présente comme suit, liste_motifs étant une liste de motifs séparés par des « | ».

« ?(liste_motifs) »
    Le motif correspond si au plus une occurrence des motifs listés dans liste_motifs correspond à la chaîne spécifiée.

« *(liste_motifs) »
    Le motif correspond si zéro ou plusieurs occurrences des motifs listés dans liste_motifs correspondent à la chaîne spécifiée.

« +(liste_motifs) »
    Le motif correspond si au moins une occurrence des motifs listés dans liste_motifs correspond à la chaîne spécifiée.

« @(liste_motifs) »
    Le motif correspond si une et une seule occurrence des motifs listés dans liste_motifs correspond à la chaîne spécifiée.

« !(liste_motifs) »
    Le motif correspond si la chaîne spécifiée ne peut correspondre à aucun des motifs listés dans liste_motifs.

VALEUR RENVOYÉE
Zéro si chaîne correspond au motif, FNM_NOMATCH s'il n'y a pas correspondance et une autre valeur non nulle s'il y a une erreur.

ATTRIBUTS
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface | Attribut | Valeur
fnmatch() | Sécurité des threads | MT-Safe env locale

STANDARDS

fnmatch()
    POSIX.1-2008.

FNM_CASEFOLD
FNM_IGNORECASE
    POSIX.1-2024.

FNM_FILE_NAME
FNM_LEADING_DIR
    GNU.

HISTORIQUE

fnmatch()
    POSIX.1-2001, POSIX.2.

FNM_CASEFOLD
    has been available on many systems even before POSIX.1-2024.

VOIR AUSSI
sh(1), glob(3), scandir(3), wordexp(3), glob(7)

TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org>, Frédéric Hantrais <fhantrais@gmail.com> et Lucien Gentis <lucien.gentis@waika9.com>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.