GNU/Linux >> Tutoriels Linux >  >> Linux

Quelle est la différence entre "localiser" et "trouver" sous Linux ?

find recherches dans le système réel. Est plus lent mais toujours à jour et a plus d'options (taille, heure de modification,...)

locate utilise une base de données précédemment construite (commande updatedb ). Est beaucoup plus rapide, mais utilise une base de données « plus ancienne » et ne recherche que des noms ou des parties de ceux-ci.

Dans tous les cas, man find et man locate vous aidera davantage.


Le locate et find les commandes trouveront un fichier, mais elles fonctionnent de manière assez différente.

locate fonctionnera en mode hors connexion :

  • Pour une explication simple, la base de données d'indexation de fichiers dans le système Unix appelée slocate listera les emplacements de tous les fichiers livrés avec le système Unix. Lorsque vous exécutez locate , il utilisera cette base de données pour rechercher un fichier particulier. Le problème avec locate est si vous venez de créer un fichier que vous souhaitez maintenant rechercher, localisez ne fonctionnera pas car le slocate la base de données n'est pas à jour. Pour surmonter ce problème, vous pouvez utiliser updatedb pour mettre à jour le slocate base de données. Exécution de locate trouvera à nouveau le fichier nouvellement créé. Ainsi, de nombreux administrateurs système Linux utilisent un cron tâche de mettre à jour régulièrement le slocate base de données.

find fonctionnera en mode en ligne/"en temps réel".

  • Il ira en fait chercher dans tous les répertoires pour trouver le fichier particulier spécifié et il examinera chaque fichier un par un. Par conséquent, cela nécessite beaucoup d'appels d'E/S.

Donc, sur la base de la nature, il est clair que la localisation est plus rapide que la recherche, mais la recherche est en temps réel.

J'espère que cela aidera à éclaircir l'idée. Tous mes vœux. :)


Linux
  1. Quelle est la différence entre la commande locate et find sous Linux

  2. Quelle est la différence entre la mémoire tampon et la mémoire cache sous Linux ?

  3. Quelle est la différence entre strtok_r et strtok_s en C ?

  4. Quelle est la différence entre un pilote de plate-forme Linux et un pilote de périphérique normal ?

  5. Quelle est la différence entre fsck et e2fsck ?

Quelle est la différence entre les noyaux macOS et Linux

Quelle est la différence entre Linux et Unix ?

Quelle est la différence entre Rsync et BTRFS sous Linux ?

La Différence Entre [[ $a ==Z* ]] Et [ $a ==Z* ] ?

Qu'est-ce qu'un Hyperviseur ? Quelle est la différence entre les types 1 et 2 ?

Quelle est la différence entre curl et Wget ?