¿Acelerando el comando de búsqueda?


1

Necesito encontrar archivos enormes en el servidor Linux y donde muchas personas procesarán archivos enormes y la carga de datos ocurrirá. El comando "buscar" toma más tiempo para dar la salida. ¿Hay alguna otra manera de acelerar el resultado de mi comando que no sea simplificar mi ruta de búsqueda?


1
¿Son estos archivos con nombres de archivos específicos o solo archivos grandes en general?
— Lawrence

No, no tienen nombres específicos. Podría ser de cualquier tipo. registros, archivos de texto, etc.
— Gowtham A R

Respuestas:


3

Puedes usar dnotify. No especificó exactamente lo que quiere hacer, por lo que no puedo ser más específico, pero comentaré que dnotificar la página del hombre estados

dnotificar: ejecuta un comando cuando cambia el contenido de un directorio

Por ejemplo, este comando

 dnotify -CD -r /home/my_name -e echo change to {}

imprimirá "cambiar a" y luego el nombre del archivo cambiará, cada vez que se cree o elimine un archivo dentro de / home / my_name o cualquiera de sus subdirectorios.

Puede combinar esto con una lista creada previamente de archivos existentes para mantener una lista actualizada de archivos, para leerlos en lugar de encontrarlos.



0

1) hombre localizar.

2) Si tiene relativamente pocos cambios o no son realmente importantes: cree un caché desde la jerarquía de su directorio con un tipo de búsqueda f en un archivo. Una vez. Más adelante puedes grep en este archivo, que es mucho más rápido.


1) Mi versión de localizar no permite filtrar resultados dependiendo del tamaño. 2) Eso significa agregar un crontab como echo "0 0 * * * root find / -size +XXXXXX ... >/var/tmp/bigfiles.txt" > /etc/cron.d/find_bigfiles
— mveroone

Tienes razón, pero tu hallazgo puede.
— peterh
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.