• Categoría: Linux
  • Visto: 7375

Ratio: 4 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio desactivado
 

El comando find es uno de los comandos más utilizados en Unix y Linux. El comando find busca en el sistema de archivos, a partir de un punto de partida, de forma recursiva nombres de archivo que se seleccionan de acuerdo a criterios específicos. Las aplicaciones más comunes de búsqueda son:

 

- Generar una lista de archivos para copia de seguridad.

 

- Búsqueda a través del sistema de ficheros después de una "perdida" de archivos.

 

- Examinar el contenido de un archivo para una determinada palabra o patrón.

 

Ejemplos:

 

Lista los directorios en el sistema de ficheros donde estemos situados. 


$ find . -type d -print

 

Busca todos los archivos con la extensión (.o) desde el directorio en el que estemos y  borra los ficheros que se ajusten al patrón. 


$ find . -name "*.o" -exec rm -i {} \;

Busca y elimina todas los archivos "core" y "*. BAK". 


$ find . (-name core -o -name ’*.BAK’) -exec rm -f {} \;

 

Buscar todos los archivos que en los últimos 7 días han sido modificados. 


$ find . ! -mtime +7 -print

 

Buscar todos los archivos que en los últimos 7 días, no han cambiado. 


$ find . -mtime +7 -print

 

Buscar en todos los archivos que contengan la cadena CREATE, devuelve el fichero. 


$ find . -type f -exec grep -l "CREATE" {} \;

 

Buscar en todos los archivos que contengan la cadena CREATE,  devuelve el fichero y la cadena completa donde se encuentra en patrón. 


$ find . -type f -exec grep "CREATE" /dev/null {} \;


 

Buscar todos los archivos que tengan un tamaño y muestra en la salida el mismo.


$ find . -size +1G -exec ls -sdh {} +