findbúsquedas en el sistema real. Es más lento pero siempre actualizado y tiene más opciones (tamaño, tiempo de modificación, ...)
locateusa una base de datos previamente construida (comando updatedb). Es mucho más rápido, pero utiliza una base de datos 'más antigua' y busca solo nombres o partes de ellos.
En cualquier caso, man findy man locatete ayudará más.
Tanto las locatey findlos comandos encontrarán un archivo, pero funcionan de maneras muy diferentes.
locate funcionará en modo fuera de línea:
Para una explicación simple, la base de datos de indexación de archivos en el sistema Unix llamada slocate enumerará las ubicaciones de todos los archivos que se envían con el sistema Unix. Cuando ejecute locate, usará esa base de datos para buscar un archivo en particular. El problema locatees que si acaba de crear un archivo que ahora desea buscar, localizar no funcionará porque la base de datos de slocate no está actualizada. Para superar este problema, puede usar updatedbpara actualizar la base de datos de slocate . Ejecutar locatenuevamente ahora encontrará el archivo recién creado. Por lo tanto, muchos administradores de sistemas Linux utilizan un crontrabajo para actualizar regularmente la base de datos slocate .
find funcionará en modo en línea / "en tiempo real".
En realidad, irá y buscará en todos los directorios para encontrar el archivo específico especificado y examinará cada archivo uno por uno. Por lo tanto, requiere muchas llamadas de E / S.
Entonces, según la naturaleza, está claro que localizar es más rápido que encontrar pero encontrar es en tiempo real.
Espero que esto ayude a aclarar la idea. Todo lo mejor. :)
Una alternativa al uso de find es el comando localizar. Este comando suele ser más rápido y puede buscar en todo el sistema de archivos con facilidad. Puede instalar el comando con apt-get:
sudo apt-get update
sudo apt-get install mlocate
La razón por la que localizar es más rápido que buscar es porque se basa en una base de datos de los archivos en el sistema de archivos. La base de datos generalmente se actualiza una vez al día con un script cron, pero puede actualizarla manualmente escribiendo:
sudo updatedb
Ejecute este comando ahora. Recuerde, la base de datos siempre debe estar actualizada si desea encontrar archivos recientemente adquiridos o creados.
Respuestas:
find
búsquedas en el sistema real. Es más lento pero siempre actualizado y tiene más opciones (tamaño, tiempo de modificación, ...)locate
usa una base de datos previamente construida (comandoupdatedb
). Es mucho más rápido, pero utiliza una base de datos 'más antigua' y busca solo nombres o partes de ellos.En cualquier caso,
man find
yman locate
te ayudará más.fuente
updatedb
hacer más o menos como la calle detrásfind / -type f | gzip > locate.gz
.Tanto las
locate
yfind
los comandos encontrarán un archivo, pero funcionan de maneras muy diferentes.locate
funcionará en modo fuera de línea:locate
, usará esa base de datos para buscar un archivo en particular. El problemalocate
es que si acaba de crear un archivo que ahora desea buscar, localizar no funcionará porque la base de datos de slocate no está actualizada. Para superar este problema, puede usarupdatedb
para actualizar la base de datos de slocate . Ejecutarlocate
nuevamente ahora encontrará el archivo recién creado. Por lo tanto, muchos administradores de sistemas Linux utilizan uncron
trabajo para actualizar regularmente la base de datos slocate .find
funcionará en modo en línea / "en tiempo real".Entonces, según la naturaleza, está claro que localizar es más rápido que encontrar pero encontrar es en tiempo real.
Espero que esto ayude a aclarar la idea. Todo lo mejor. :)
fuente
locate
simplemente mira su base de datos e informa la ubicación del archivo.find
no utiliza una base de datos, atraviesa todos los directorios y sus subdirectorios y busca archivos que coincidan con el criterio dado.fuente
Una alternativa al uso de find es el comando localizar. Este comando suele ser más rápido y puede buscar en todo el sistema de archivos con facilidad. Puede instalar el comando con apt-get:
La razón por la que localizar es más rápido que buscar es porque se basa en una base de datos de los archivos en el sistema de archivos. La base de datos generalmente se actualiza una vez al día con un script cron, pero puede actualizarla manualmente escribiendo:
Ejecute este comando ahora. Recuerde, la base de datos siempre debe estar actualizada si desea encontrar archivos recientemente adquiridos o creados.
fuente