NOM¶
locate - Lister des fichiers d'une base de données correspondant à un
motif
SYNOPSIS¶
locate [-d chemin | --database=chemin] [-e | -E | --[non-]existing] [-i |
--ignore-case] [-0 | --null] [-c | --count] [-w | --wholename] |-b |
--basename] [-l N | --limit=N] [-S | --statistics] [-r | --regex ]
[--max-database-age D] [-P | -H | --nofollow] [-L | --follow] [--version] [-A
| --all] [-p | --print] [--help] motif...
DESCRIPTION¶
Cette page de manuel documente la version GNU de
locate. Pour chaque
motif donné,
locate recherche dans une ou plusieurs bases de noms
de fichiers et affiche les noms de fichiers qui contiennent ce motif. Les
motifs peuvent contenir des caractères spéciaux de
l'interpréteur de commandes : « * »,
« ? » et « [] ». Les caractères
spéciaux n'interprètent pas « / » et
« . ». Par conséquent, un motif
« toto*titi » peut correspondre à un nom de fichier
contenant « toto3/titi » et un motif
« *tata* » peut correspondre à un nom de fichier
contenant « tutu/.tata ». Les motifs contenant des
caractères spéciaux doivent être protégés par des
guillemets pour éviter leur développement par l'interpréteur de
commandes.
Si un motif est une chaîne de caractères (sans caractères
spéciaux),
locate affiche tous les noms de fichiers de la base de
données qui contiennent cette chaîne de caractères. Si un motif
contient des caractères spéciaux,
locate affiche seulement
les noms de fichiers qui correspondent exactement au motif. Ainsi, les motifs
qui contiennent des caractères spéciaux doivent normalement
commencer par « * » et se terminer le plus souvent par ce
même caractère spécial. Les exceptions sont les motifs qui
cherchent explicitement une correspondance en début ou en fin d'un nom de
fichier.
Les bases de noms de fichiers contiennent des listes de fichiers qui
étaient sur le système lors de la dernière mise à jour des
bases de données. L'administrateur système peut choisir le nom du
fichier de la base de noms par défaut, la fréquence des mises à
jour des bases de données et les répertoires à
référencer ; reportez-vous à
updatedb(1).
Si la sortie de
locate est dirigée vers un terminal, les
caractères inhabituels en sortie sont échappés de la même
façon que par l'action
-print de la commande
find. Si la
sortie n'est pas dirigée vers un terminal, les noms de fichier sont
imprimés exactement comme ils sont.
OPTIONS¶
- -0, --null
- Utiliser le caractère ASCII NUL comme séparateur
au lieu du caractère saut de ligne.
- -A, --all
- Afficher seulement les noms de fichiers qui correspondent
à tous les motifs de recherche et non ceux qui correspondent à
un ou plusieurs motifs de recherche.
- -b, --basename
- Les résultats correspondent si le motif indiqué
correspond à la partie finale du nom de fichier listé dans la
base de noms. La partie finale fait habituellement référence au
nom du fichier sans son chemin.
- -c, --count
- Au lieu d'afficher les fichiers correspondants, afficher
seulement le nombre total de correspondances trouvées, sauf si --
print (-p) est aussi présente.
- -d chemin, --database=chemin
- Au lieu de chercher dans la base de noms de fichiers par
défaut, chercher dans les bases de noms de fichiers de chemin,
qui est une liste de bases de noms de fichiers séparés par
« : ». Vous pouvez aussi utiliser la variable
d'environnement LOCATE_PATH pour définir la liste des bases de
données à parcourir. L'option a priorité sur la variable
d'environnement si elles sont toutes deux utilisées. Les
éléments vides du chemin sont des alias de la base de
données par défaut. Une base de données peut être
envoyée sur l'entrée standard en utilisant
« - » comme élément de chemin. Si
chemin contient plus d'un élément
« - », les dernières entrées sont
ignorées (et un message d'avertissement est affiché).
- Le format de la base de noms de fichiers a changé
depuis les versions 4.0 de GNU find et locate pour
permettre aux machines qui ordonnent les octets différemment de
partager les bases de données. Cette version de locate peut
reconnaître et lire des bases de données produites pour les
anciennes versions de GNU locate ou pour les versions Unix de
locate ou find. La gestion du format des anciennes versions
des bases de données de locate sera abandonnée dans une future
version.
- -e, --existing
- Afficher seulement les noms des fichiers qui existent
à cet instant (au lieu des fichiers qui existaient lors de la
création de la base de noms). Cela peut fortement ralentir le
programme s'il y a un grand nombre de correspondances dans la base de
noms. Si vous utilisez cette option dans un programme, il est possible
qu'un fichier soit supprimé après que locate a
enregistré son existence, mais avant que vous l'utilisiez.
- -E, --non-existing
- Afficher seulement les noms des fichiers qui n'existent pas
actuellement (au lieu des fichiers qui existaient lors de la création
de la base de noms). Cela peut fortement ralentir le programme s'il y a un
grand nombre de correspondances dans la base de noms.
- --help
- Afficher un résumé des options de locate
et quitter.
- -i, --ignore-case
- Ignorer les différences entre minuscules et majuscules
entre le motif et les noms de fichiers.
- -l N, --limit=N
- Limiter le nombre de correspondances à N. Si une
limite est fixée avec cette option, le nombre d'entrées
affichées avec l'option -c ne sera jamais plus grand que
celle-ci.
- -L, --follow
- Lors du test d'existence des fichiers (avec les options -e
ou -E), considérer les liens symboliques cassés comme des
fichiers non existants. Ceci est le comportement par défaut.
- --max-database-age D
- locate affichera normalement un message
d'avertissement si la base de données dans laquelle il effectue sa
recherche a plus de 8 jours. Cette option permet de définir une autre
valeur que 8. Définir cette valeur avec un nombre négatif
entraîne un comportement indéfini.
- -m, --mmap
- Option ne faisant rien, présente pour la
compatibilité avec la commande locate des systèmes
BSD.
- -P, -H, --nofollow
- Lors du test de l'existence des fichiers (avec les options
-e ou -E), traiter les liens symboliques cassés comme des fichiers
existants. Le paramètre -H de cette option est fourni uniquement par
similitude avec find ; l'utilisation de -P est
recommandée à la place de -H.
- -p, --print
- Afficher les résultats de la recherche quand ils ne
devraient pas apparaître à cause de la présence des options
--statistics (-S) ou --count (-c).
- -r, --regex
- Le motif indiqué sur la ligne de commande est
interprété comme une expression rationnelle à l'opposé
des motifs développés. Les expressions rationnelles s'utilisent
de la même manière que dans emacs et find,
excepté le fait que « . » correspondra avec un
caractère saut de ligne. Les noms de fichiers dont les chemins
absolus correspondent à l'expression rationnelle spécifiée
sont affichés (ou comptés si l'option -c est présente).
Pour attacher une expression rationnelle au début ou à la fin
d'un nom de chemin absolu vous devez utiliser respectivement les
caractères « ^ » et « $ »
dans celle-ci (ce qui est la méthode courante pour réaliser cela
avec des expressions rationnelles).
- -s, --stdio
- Option ne faisant rien, présente pour la
compatibilité avec la commande locate des systèmes
BSD.
- -S, --statistics
- Afficher diverses informations à propos de chaque base
de noms et quitter sans exécuter de recherche à moins qu'un
motif soit donné. Pour la compatibilité avec les systèmes
BSD, -S est acceptée comme alias pour --statistics. Cependant la
sortie de locate -S est différente pour les
implémentations GNU et BSD de locate.
- --version
- Afficher le numéro de version de locate et
quitter.
- -w, --wholename
- Correspondance avec le nom complet du fichier tel qu'il est
listé dans la base de noms. Ceci est le comportement par
défaut.
ENVIRONNEMENT¶
- LOCATE_PATH
- Liste de bases de données à parcourir,
séparées par « : ». Si la valeur
possède en tête ou en fin le caractère
« : », ou possède deux caractères
« : » sur une ligne, le résultat dépendra de
la version de locate.
VOIR AUSSI¶
find(1),
locatedb(5),
updatedb(1),
xargs(1),
glob(3),
Finding Files (en ligne dans Info ou en version
imprimée)
HISTORIQUE¶
Le programme
locate est apparu en tant que programme de recherche rapide
de BSD, offert par James A. Woods. Ceci est décrit dans son papier
Finding Files Fast qui a été publié dans Usenix
;login:, Vol 8, No 1, Fév/Mars, 1983, pp. 8-10. Lorsque le
comportement du programme
find a été modifié afin
d'utiliser l'action
-print par défaut dés lors qu'aucune
action n'avait été spécifiée, l'interprétation de
find motif a été modifiée. Les développeurs
BSD ont alors transféré la fonctionnalité de recherche rapide
à
locate. L'implémentation du
locate du GNU
découle en fait du même code.
Modifications importantes de
locate, dans l'ordre chronologique
inverse :
4.3.7 |
Gestion des différents ordonnancements de codage des octets |
|
dans l'ancien format de base de données |
4.3.3 |
Gestion correcte des caractères multi-octets par locate
-i |
|
Arrivée de --max_db_age |
4.3.2 |
Gestion du format de base de données de slocate |
4.2.22 |
Arrivée de l'option --all |
4.2.15 |
Arrivée de l'option --regex |
4.2.14 |
Arrivée des options -L, -P, -H |
4.2.12 |
Une chaîne vide dans LOCATE_PATH correspond à la base
de |
|
données par défaut |
4.2.11 |
Arrivée de l'option --statistics |
4.2.4 |
Arrivée de --count et de --limit |
4.2.0 |
Les caractères jokers offrent la correspondance avec le nom |
|
complet du fichier |
4.0 |
Arrivée du format de base de données LOCATE02 |
3.7 |
Locate sait rechercher dans plusieurs bases de données |
BOGUES¶
La base de noms de locate manipule correctement les noms de fichiers contenant
des caractères saut de ligne, mais seulement si la commande système
sort possède une option -z opérationnelle. Si vous suspectez que
locate ait besoin de retourner des noms de fichiers incluant des
caractères saut de ligne, alors utilisez l'option
--null.
La meilleure façon de signaler un bogue est d'utiliser le formulaire à
l'adresse
http://savannah.gnu.org/bugs/?group=findutils. L'utilité de
cette page est que vous serez en mesure de suivre l'évolution de la
correction du problème. D'autres commentaires à propos de
locate et du paquet findutils peuvent être envoyés à la
liste de diffusion
bug-findutils. Pour s'abonner à cette liste,
envoyez un courriel à
bug-findutils-request@gnu.org.
TRADUCTION¶
Cette page de manuel a été traduite par Frédéric Delanoy
<delanoy_f AT yahoo DOT com> en 2002. La version présente dans
Debian est dorénavant maintenue par Sylvain Cherrier <sylvain DOT
cherrier AT free DOT fr> et les membres de la liste <debian-l10n-french
AT lists DOT debian DOT org>. Veuillez signaler toute erreur de traduction
par un rapport de bogue sur le paquet manpages-fr-extra.