next up previous contents index
Next: Determinar el contenido de Up: Cuestiones adicionales a propósito Previous: Compresión de Ficheros con   Índice General   Índice de Materias

Encontrar Ficheros

Hay dos tipos de servicios para encontrar ficheros: find y locate. find busca los ficheros en su estado actual. locate busca en un índice generado por el sistema cada mañana a las 6:42 (esto es una tarea de cron). locate no encontrará ningún fichero que haya sido creado después de generar el índice. Sin embargo, como locate busca en un índice, es mucho más rápido (como utilizar el índice de un libro, en lugar de leerlo entero efectuando una búsqueda).

Para comparar estas dos formas de encontrar ficheros, imagine que no puede recordar dónde reside el fichero de configuración de X, XF86Config.

     $ locate XF86Config
Tendría que mostrar un resultado muy rápidamente. Obtendrá una lista de nombres de fichero que contienen la palabra XF86Config, similar a la siguiente:

     /etc/X11/XF86Config

     /usr/X11R6/lib/X11/XF86Config

     /usr/X11R6/lib/X11/XF86Config.eg

     /usr/X11R6/man/man5/XF86Config.5x.gz
Ahora pruebe con la orden find:

     $ find / -name XF86Config
Escuchará una gran actividad de disco, y tardará más. El resultado deberá ser algo parecido a:

     /etc/X11/XF86Config

     /usr/X11R6/lib/X11/XF86Config

     find: /var/spool/cron/atjobs: Permiso denegado

     find: /var/spool/cron/atspool: Permiso denegado

     find: /var/lib/xdm/authdir: Permiso denegado
Fíjese en que find encontró sólo los ficheros que se llamaban exactamente XF86Config, en lugar de cualquier otro fichero que contuviera esa cadena de letras. Además, find intentó buscar en cada directorio del sistema (incluidos algunos en los que no tiene permiso de lectura). Esta es la razón de que apareciesen los mensajes Permiso denegado.

La sintaxis también es diferente. Con find ha de especificar el directorio a partir del cual quiere buscar, mientras que locate escoge de forma automática el directorio raíz. Además, tiene que especificar un nombre que buscar utilizando la opción -name. También podría haber buscado los ficheros utilizando cualquier otro criterio, como la fecha de modificación o su dueño. Para que find encuentre ficheros cuyos nombres se ajusten a XF86Config, tendría que utilizar un comodín:

     $ find / -name '*XF86Config*'
Al igual que muchas otras herramientas de la línea de órdenes, find acepta comodines como argumento.

En general, find es una utilidad más potente, mientras que locate es más rápida para las búsquedas rápidas normales. Llevaría mucho tiempo explicar todo el rango posible de búsquedas que se pueden hacer. Si desea más detalles, escriba info find, info locate, que le mostrarán las páginas «info» de find y locate.


next up previous contents index
Next: Determinar el contenido de Up: Cuestiones adicionales a propósito Previous: Compresión de Ficheros con   Índice General   Índice de Materias
Enrique Zanardi 2000-11-26