GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment utiliser la commande locate sous Linux

Présentation

Le locate La commande est un utilitaire Unix utilisé pour trouver rapidement des fichiers et des répertoires. La commande est une alternative plus pratique et efficace à la recherche commande, qui est plus agressive et prend plus de temps pour terminer la recherche.

Opposé à find , le locate La commande ne recherche pas l'intégralité du système de fichiers, mais parcourt une base de données de fichiers régulièrement mise à jour dans le système. Ainsi, la recherche se termine beaucoup plus rapidement.

Dans ce didacticiel, vous apprendrez à installer et à utiliser le locate commande sous Linux.

Prérequis

  • Un système exécutant Linux.
  • Un compte avec des privilèges d'administrateur.

Comment installer la localisation

Selon la distribution Linux que vous utilisez, le locate package peut ne pas être pré-installé.

Pour vérifier si locate est installé, saisissez :

locate

Si locate est installé sur votre distribution, la commande imprime la sortie suivante :

Pour ce tutoriel, nous avons utilisé Ubuntu 20.04, qui n'est pas fourni avec le locate utilitaire pré-installé. Dans ce cas, le message de sortie est :

Installer la localisation sur Ubuntu et Debian

Suivez les étapes ci-dessous pour installer locate sur Ubuntu ou Debian :

1. Mettez à jour le référentiel de packages :

sudo apt update 

2. Installez le locate package en exécutant :

sudo apt install mlocate

Installez la localisation sur CentOS et Fedora

Suivez les étapes ci-dessous pour installer locate sur CentOS ou Fedora :

1. Mettez à jour le référentiel de packages :

sudo yum -y update

2. Exécutez la commande suivante pour installer locate :

sudo yum install mlocate

Comment utiliser la commande locate sous Linux avec des exemples

Le locate La commande trouve des fichiers sous Linux en utilisant le nom de fichier. locate est utilisé pour obtenir des résultats instantanés, et c'est un utilitaire essentiel lorsque la vitesse est une priorité.

La commande effectue la recherche à l'aide d'une base de données contenant des morceaux de fichiers avec les chemins correspondants dans le système. Cependant, locate ne vérifie pas les fichiers en dehors de la base de données, ce qui signifie qu'il ne signale pas les fichiers créés après la mise à jour la plus récente de la base de données.

La syntaxe de locate la commande est :

locate [options] [pattern]

Voici quelques options utiles :

Option Description
-A, --all Affiche uniquement les entrées correspondant à tous les modèles spécifiés.
-b, --basename Mette en correspondance uniquement le nom de base avec les modèles spécifiés.
-c, --count Affiche le nombre d'entrées correspondantes au lieu des noms de fichiers.
-d, --database [DBPATH] Remplace la base de données par défaut par [DBPATH] - une liste de noms de fichiers de base de données séparés par deux-points.
-e, --existing Affiche uniquement les entrées des fichiers existants.
-L, --follow Utiliser pour vérifier si les fichiers existent si le --existing option est spécifiée. Le --follow l'option omet les liens symboliques brisés.
-i, --ignore-case Ignore la sensibilité à la casse du modèle.
-p, --ignore-spaces Ignore la ponctuation et les espaces lors de la recherche de motifs.
-t, --transliterate Utilise iconv translittération pour ignorer les accents et les signes diacritiques lors de la correspondance des modèles.
-l, --limit, -n [LIMIT] Utiliser pour quitter avec succès après avoir trouvé un [LIMIT] nombre d'entrées.
-0, --null Sépare les entrées de sortie à l'aide du ASCII NUL caractère au lieu d'imprimer chaque entrée dans une nouvelle ligne.
-S, --statistics Imprime les statistiques de chaque base de données lue sur la sortie standard au lieu de rechercher des fichiers.
-q, --quiet Masque toutes les erreurs rencontrées lors de la lecture et du traitement des bases de données.
-r, --regexp [REGEXP] Utilisé pour rechercher une expression régulière de base [REGEXP] . La spécification de cette option n'autorise pas [pattern] arguments.
-w, --wholename Mette en correspondance uniquement le nom de chemin complet avec les modèles spécifiés.
-h, --help Affiche le fichier d'aide avec une liste de toutes les options disponibles.

Les sections suivantes répertorient des exemples utiles d'utilisation de locate commande.

Rechercher un fichier

La façon la plus simple d'utiliser le locate commande consiste à saisir le motif que vous souhaitez rechercher.

Par exemple, recherchez tous les fichiers contenant le mysql motif dans le nom du fichier en exécutant la commande suivante :

locate mysql

La sortie répertorie tous les chemins absolus pour les fichiers contenant le mysql motif dans le nom du fichier.

Formater la sortie

Lorsque le résultat de la recherche est une longue liste de fichiers, dirigez le locate commande en less pour une meilleure lisibilité et un défilement plus facile.

Par exemple :

locate mysql | less

Naviguez dans la sortie en appuyant sur la barre d'espace pour avancer, b pour inverser, ou Q pour quitter.

Afficher les fichiers existants

Alors que le locate récupère les résultats presque instantanément, la vitesse a un coût. Parfois, les fichiers supprimés apparaissent dans les résultats car la base de données locate reads n'a pas été mis à jour depuis la suppression des fichiers. De plus, les nouveaux fichiers n'apparaissent pas dans les résultats s'ils ont été créés après la dernière mise à jour de la base de données.

Éliminez ces lacunes en utilisant le -e option pour rechercher le système de fichiers et inclure uniquement les fichiers existants dans les résultats.

Par exemple :

Dans l'exemple ci-dessus, nous avons d'abord supprimé un fichier en utilisant rm . Recherche du fichier avec locate affiche l'emplacement du fichier supprimé. Cependant, lors de l'utilisation de -e option, locate n'affiche aucun résultat depuis la suppression du fichier.

Compter les fichiers existants

Imprimez le nombre de fichiers correspondants au lieu des noms de fichiers et de leurs chemins absolus en spécifiant le -c option.

Par exemple :

locate -c mysql

La sortie contient uniquement le nombre de fichiers contenant le mysql chaîne dans le nom du fichier. Toutes les autres informations sont supprimées.

Désactiver les erreurs lors de la recherche

Le -q l'option indique locate pour supprimer toutes les erreurs qui pourraient apparaître lors de la lecture d'une base de données.

Dans l'exemple suivant, locate utilise une base de données différente pour effectuer la recherche. La commande signale d'abord que la base de données n'existe pas.

Cependant, en spécifiant le -q l'option supprime l'erreur :

Limiter le nombre de résultats de recherche

Limitez le nombre de résultats de recherche avec le -n option pour éviter les résultats redondants. Par exemple, limitez la recherche à seulement dix résultats en saisissant :

locate *.txt -n 10

La sortie affiche uniquement les dix premiers fichiers correspondant au modèle de recherche.

Ignorer les fichiers sensibles à la casse

Par défaut, locate effectue une recherche sensible à la casse lors du traitement de la requête d'entrée. Ordonner à locate pour ignorer la sensibilité à la casse en utilisant le -i option.

Dans l'exemple suivant, nous avons d'abord recherché example_file en minuscules, et locate n'a montré aucune sortie car le nom de fichier contient des lettres majuscules.

La recherche du fichier en majuscule indique l'emplacement du fichier :

Effectuer la même recherche en minuscules et en spécifiant le -i l'option ignore la casse et affiche le fichier dans la sortie :

Rechercher un fichier avec un nom exact

Par défaut, locate analyse le modèle d'entrée comme une chaîne et affiche tous les fichiers contenant le modèle d'entrée dans le nom de fichier. Par exemple, rechercher mysql affiche tous les fichiers contenant le mysql chaîne dans le cadre du nom de fichier, au lieu de fichiers dont le nom de fichier complet est mysql .

Rechercher un fichier avec un nom exact en utilisant le -r (expression régulière).

Par exemple :

La sortie affiche uniquement les fichiers dont le nom de fichier correspond complètement au modèle d'entrée.

Séparez les entrées de sortie avec ASCII NUL

Les entrées de sortie que locate produits sont séparés par une nouvelle ligne (\n ) personnage. Utilisez le -0 possibilité de séparer les entrées avec ASCII NUL au lieu du caractère de nouvelle ligne.

Par exemple :

locate -0 apache

Le séparateur par défaut n'est plus le caractère de nouvelle ligne et les entrées sont séparées par ASCII NUL .

Afficher les statistiques de la base de données

Le locate La commande vous permet de voir diverses statistiques de base de données, y compris le nombre de répertoires et de fichiers stockés dans la base de données. Pour afficher les statistiques de la base de données, spécifiez le -S choix :

locate -S

La sortie indique quelle base de données locate utilise actuellement, le nombre de répertoires et de fichiers et la taille de la base de données en octets.

Mettre à jour la base de données de localisation

La base de données que locate utilise automatiquement les mises à jour quotidiennes en même temps. Pour mettre à jour la base de données manuellement et vous assurer que l'index du fichier est correct, exécutez la commande suivante :

sudo updatedb

Le processus de mise à jour prend quelques secondes, selon le nombre de fichiers sur le système.

Choisir une autre base de données mlocate

Ordonner à locate d'utiliser une base de données autre que celle par défaut en spécifiant le -d option. La fonctionnalité est utile lors de la recherche de résultats non présents dans le mlocate par défaut base de données.

Pour spécifier une autre base de données, utilisez la syntaxe suivante :

locate -d [new database path] [pattern]

Ignorer les signes diacritiques et les différences d'accent

Le locate La commande utilise des lettres ordinaires pour la correspondance des résultats, ce qui signifie que les noms de fichiers contenant des lettres avec des signes diacritiques n'apparaissent pas dans les résultats de la recherche. Utilisez le -t option pour demander à locate pour ignorer ces différences entre les lettres et inclure des signes diacritiques dans les résultats.

Par exemple :

Recherche du nice-cafe pattern n'affiche aucun résultat dans l'exemple ci-dessus car le nom de fichier contient un signe diacritique. Rechercher à nouveau le même modèle et spécifier le -t l'option montre le nice-café chemin du fichier en conséquence, en ignorant le signe diacritique dans le nom du fichier.


Ubuntu
  1. Comment utiliser la commande Linux grep

  2. Comment utiliser la commande history sous Linux

  3. Comment utiliser la commande Apt-Get sous Linux

  4. Comment utiliser la commande id sous Linux

  5. Comment utiliser la commande "screen" sous Linux

Comment utiliser la commande Linux Top

Comment utiliser la commande fd sur le système Linux

Comment utiliser la commande wget sous Linux ?

Comment utiliser la commande xargs sous Linux ?

Comment utiliser la commande RPM sous Linux

Comment utiliser la commande which sous Linux