Next: Determinar el contenido de
Up: Cuestiones adicionales a propósito
Previous: Compresión de Ficheros con
  Índice General
  Índice de Materias
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: 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