Subsecciones

Localización de ficheros

Una tarea común de administración es la búsqueda de ficheros que verifiquen ciertas propiedades El comando básico para hacer esto es find

Comando find

Busca a través de la jerarquía de directorios ficheros que cumplan determinado criterio La expresión tiene los siguientes componentes:

Opciones de find

normalmente se colocan al principio de la expresión
Opción Efecto
-maxdepth n desciende como máximo n directorios
-mindepth n empieza a buscar a partir del nivel n
-depth procesa el contenido del directorio antes que el propio directorio
-daystart para medidas con tiempo, empieza desde el principio del día actual
-mount o -xdev no pasa a otras particiones

Criterios de busqueda


Criterio Efecto
-name patrón busca ficheros que coincidan con el patrón (pueden usarse comodines, escapados)
-wholename permite incluir nombres con el path
-iname igual que name pero no distingue mayúsculas/minúsculas
-regex igual pero usa REGEXPR
-type tipo busca por tipo de fichero (b, c, d, p, l, s, f)
-size [+/-]n[bck] busca por tamaño (tamaño igual, mayor o menor que n con b=bloques, c=bytes y k=KB)
-perm [+/-]permisos busca por permisos (sin nada, permisos exactos, - todos los permisos y + alguno de los permisos)
-user nombre busca por propietario
-uid n, -gid n busca por UID/GID
-nouser, -nogroup busca ficheros con prop./grupo no válidos
Busqueda por atributos temporales
Criterio Efecto
-atime [+/-]n busca ficheros cuya fecha de acceso para lectura coincide con, es anterior a (+) o es posterior a (-) n días
-mtime [+/-]n lo mismo, pero con la fecha de última modificación del fichero
-ctime [+/-]n lo mismo, pero con la fecha en que se cambió el estado del fichero
-amin/-mmin/ lo mismo, pero ahora n representa minutos
-cmin [+/-]n
-newer file busca ficheros modificados más recientemente que file
-anewer file ficheros con último acceso más reciente que la modificación de file
-cnewer file ficheros con cambio de estado más reciente que la modificación de file

Acciones de find

find permite realizar distintas acciones con los ficheros que encuentra
Acción Descripción
-print imprime el nombre de los ficheros que encuentra (acción por defecto)
-ls imprime el nombre de los ficheros con formato de listado largo
-exec comando \{\} \; ejecuta comando sobre los ficheros encontrados
-ok comando \{\} \; igual que -exec pero pregunta antes de ejecutar comando
-prune si directorio no desciende por el (permite ignorar directorios)
los caracteres {} se refieren al fichero que find acaba de encontrar y ; indica el fin del comando

Operadores de find

permiten agrupar expresiones
Operador Descripción
expr1 -a expr2 AND (expr2 no se evalúa si expr1 es falsa)
expr1 expr2 igual que -a
expr1 -o expr2 OR (expr2 no se evalúa si expr1 es cierta)
! expr1 NOT (cierto si expr falsa)
( expr1 ) agrupan expresiones (hay que escapar los paréntesis)

Ejemplos con find

Este último ejemplo funciona, pero es muy ineficiente (¿por qué?) si el número de ficheros .html es muy grande grep puede tener problemas

Otros comandos para localizar ficheros

Existen otros comandos para la localización de ficheros: which, whereis, locate

Comando which

muestra la localización de comandos

Comando whereis

muestra la localización del binario, fuente y página de manual de un comando

Comando locate

localiza ficheros rápidamente

Administración de Sistemas e Redes <ASR.USC[at]gmail.com>
Tomás Fernández Pena <tf.pena[at]usc.es>
Última actualización: 19-10-15 11:23 por tomas

Creative Commons License
Curso de Administración de Sistemas y Redes por Tomás Fernández Pena se distribuye bajo la licencia Creative Commons Recoñecemento-Compartir baixo a mesma licenza. 3.0 España.
Trabajo original en persoal.citius.usc.es/tf.pena/ASR.