Recherche de site Web

10 exemples pratiques de commande « localiser » utiles pour les débutants sous Linux


L'une des expériences les plus désagréables auxquelles sont généralement confrontés la plupart des nouveaux utilisateurs de la plate-forme Linux est l'incapacité de trouver le moyen le plus simple et pourtant le plus efficace de rechercher des fichiers sur leur système.

Linux, comme presque tout autre système d'exploitation, utilise plusieurs mécanismes pour répondre aux requêtes de recherche des utilisateurs. Deux des utilitaires de recherche de fichiers les plus populaires accessibles aux utilisateurs sont appelés rechercher et localiser.

Maintenant, il est important de noter que les deux processus de recherche fonctionnent extrêmement bien, mais néanmoins, le centre de cet article sera davantage axé sur l'utilitaire localiser, qui est le plus pratique des deux car il utilise des méthodes plus efficaces. des moyens de traiter rapidement les requêtes saisies par les utilisateurs.

L'utilitaire locate fonctionne mieux et plus rapidement que son homologue find car au lieu de rechercher dans le système de fichiers lorsqu'une recherche de fichier est lancée (ce que find fait), Locate rechercherait dans une base de données. Cette base de données contient des morceaux et des parties de fichiers et leurs chemins correspondants sur votre système.

Voici dix commandes de localisation simples pour vous permettre de devenir plus productif avec votre machine Linux.

1. Utilisation de la commande Localiser

Lancer la commande Locate pour rechercher un fichier est assez simple et direct. Il vous suffit de taper :


$ locate LAMP-Setup.odt

/home/tecmint/LAMP-Setup.odt
/home/tecmint/TecMint.com/LAMP-Setup.odt

2. Limiter les requêtes de recherche à un numéro spécifique

Vous pouvez limiter vos résultats de recherche à un nombre requis pour éviter la redondance avec vos résultats de recherche à l'aide de la commande -n.

Par exemple, si vous souhaitez seulement 20 résultats de vos requêtes, vous pouvez saisir la commande suivante :


$ locate "*.html" -n 20

/home/tecmint/.config/google-chrome/Default/Extensions/aapocclcgogkmnckokdopfmhonfmgoek/0.9_0/main.html
/home/tecmint/.config/google-chrome/Default/Extensions/aohghmighlieiainnegkcijnfilokake/0.9_0/main.html
/home/tecmint/.config/google-chrome/Default/Extensions/felcaaldnbdncclmgdcncolpebgiejap/1.1_0/main.html
/home/tecmint/.config/google-chrome/Default/Extensions/kbfnbcaeplbcioakkpcpgfkobkghlhen/14.752.848_0/forge.html
/home/tecmint/.config/google-chrome/Default/Extensions/kbfnbcaeplbcioakkpcpgfkobkghlhen/14.752.848_0/src/popup.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/additional-feature.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/background.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/edit.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/help.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/options.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/popup.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/purchase.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/upload.html
/home/tecmint/.config/google-chrome/Default/Extensions/nlipoenfbbikpbjkfpfillcgkoblgpmj/3.9.16_0/oauth2/oauth2.html
/home/tecmint/.config/google-chrome/Default/Extensions/nmmhkkegccagdldgiimedpiccmgmieda/1.0.0.2_0/html/craw_window.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_route_details.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/feedback.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_setup/devices.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_setup/index.html
/home/tecmint/.config/google-chrome/Default/Extensions/pkedcjkdefgpdelpbcmbmeomcjbeemfm/5516.1005.0.3_0/cast_setup/offers.html

Les résultats afficheront les 20 premiers fichiers se terminant par .html.

3. Afficher le nombre d'entrées correspondantes

Si vous souhaitez afficher le nombre de toutes les entrées correspondantes du fichier « tecmint », utilisez la commande locate -c.


$ locate -c [tecmint]*

1550

4. Ignorer les sorties de localisation sensibles à la casse

Par défaut, locate est configuré pour traiter les requêtes en respectant la casse, ce qui signifie que TEXT.TXT vous dirigera vers un résultat différent de celui text.txt. .

Pour que la commande locate ignore la sensibilité à la casse et affiche les résultats des requêtes en majuscules et en minuscules, saisissez les commandes avec l'option -i.


$ locate -i *text.txt*

/home/tecmint/TEXT.txt
/home/tecmint/text.txt

5. Actualiser la base de données mlocate

Puisque la commande locate repose sur une base de données appelée mlocate. Cette base de données doit être mise à jour régulièrement pour que l'utilitaire de commande fonctionne
efficacement.

Pour mettre à jour la base de données mlocate, vous utilisez un utilitaire appelé updatedb. Il convient de noter que vous aurez besoin des privilèges de superutilisateur pour que cela fonctionne correctement, s'il doit être exécuté en tant que privilèges root ou sudo.


sudo updatedb

6. Afficher uniquement les fichiers présents dans votre système

Lorsque vous disposez d'une base de données mlocate** mise à jour, la commande locate produit toujours les résultats des fichiers dont les copies physiques sont supprimées de votre système.

Pour éviter de voir les résultats de fichiers non présents sur votre machine au moment de la saisie de la commande, vous devrez utiliser la commande locate-e. Le processus recherche votre système pour vérifier l'existence du fichier que vous recherchez même s'il est toujours présent dans votre mlocate.db.


$ locate -i -e *text.txt*

/home/tecmint/text.txt

7. Entrées de sortie séparées sans nouvelle ligne

Le séparateur par défaut de la commande locate est le caractère de nouvelle ligne (\\n). Mais si vous préférez utiliser un séparateur différent comme ASCII NUL, vous pouvez le faire en utilisant l'option de ligne de commande -0.


$ locate -i -0 *text.txt*

/home/tecmint/TEXT.txt/home/tecmint/text.txt

8. Vérifiez votre base de données de localisation

Si vous avez des doutes quant à l'état actuel de votre mlocate.db, vous pouvez facilement consulter les statistiques de la base de données de localisation en utilisant la commande -S.


$ locate -S

Database /var/lib/mlocate/mlocate.db:
	32,246 directories
	4,18,850 files
	2,92,36,692 bytes in file names
	1,13,64,319 bytes used to store database

9. Supprimer les messages d'erreur dans Localiser

Essayer constamment d'accéder à votre base de données de localisation génère parfois des messages d'erreur inutiles indiquant que vous ne disposez pas des privilèges requis pour avoir un accès root au mlocate.db, car vous n'êtes qu'un utilisateur normal et non le Superutilisateur requis.

Pour supprimer complètement ces messages, utilisez la commande -q.


locate "\*.dat" -q*

10. Choisissez un autre emplacement mlocate

Si vous saisissez des requêtes recherchant des résultats non présents dans la base de données mlocate par défaut et que vous souhaitez des réponses provenant d'un autre mlocate.db situé ailleurs dans votre système, vous pouvez pointer le Locate dans une autre base de données mlocate dans une autre partie de votre système avec la commande -d.


locate -d <new db path> <filename>

La commande locate peut ressembler à un de ces utilitaires qui fait tout ce que vous lui demandez sans trop de difficultés, mais en vérité, pour que le processus conserve son efficacité, le mlocate.db a besoin d'être nourri d'informations de temps en temps. Ne pas le faire pourrait rendre le programme un peu inutile.