Scroll to navigation

fnmatch(3) Library Functions Manual 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 :

Si ce drapeau est défini, traiter la barre oblique inverse « \ » comme un caractère ordinaire et non comme un caractère d'échappement.
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.
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.
Il s'agit d'un synonyme GNU de FNM_PATHNAME.
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é.
Si ce drapeau (une extension GNU) est défini, la correspondance est recherchée sans tenir compte de la casse.
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

POSIX.1-2001, POSIX.1-2008, POSIX.2. Les drapeaux FNM_FILE_NAME, FNM_LEADING_DIR et FNM_CASEFOLD sont des extensions GNU.

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 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.

15 décembre 2022 Pages du manuel de Linux 6.03