Título: Introducción al comando Find Publicado por: madpitbull_99 en 28 Julio 2011, 21:44 pm Introducción al comando Find
El comando por excelencia para buscar archivos en Linux es find. En este articulo se pretende dar una introducción a este comando. Para los ejemplos trabajare sobre una carpeta llamada "test" con la siguiente estructura: Código
El ejemplo mas básico es buscar por nombre de fichero, en mi caso buscare un fichero llamado "punteros.c": Código
El parametro -name tiene en cuenta si la palabra tiene letras en minúscula o mayúscula, si se quiere ignorar eso, hay que usar el parametro -iname: Código
Para limitar la búsqueda a un directorio, se hace de la siguiente manera: Código
En mi caso, he limitado la búsqueda a la carpeta /home/mad/test. Podemos indicarle hasta el nivel de profundidad al realizar la busqueda: Código
En el primero ejemplo estamos partiendo desde /(root) y le indicamos que busque el fichero "backup.sh" en los tres primeros niveles, como veréis el comando no arroja ningún resultado. A continuación lanzamos el mismo comando pero indicándole que busque en los cuatro primeros niveles y vemos que encuentra el fichero deseado. Se le puede indicar un rango de niveles de profundidad: Código
En este ejemplo se buscara entre los niveles tres y cinco. Mediante el parámetro -exec podemos ejecutar otros comandos a medida que se encuentran ficheros: Código
En este caso, se buscan un fichero llamado "SoCkeTs.c" y se le calcula el hash MD5. Para invertir la búsqueda, se hace la siguiente manera: Código
El comando anterior encuentra todos los ficheros cuyo nombre no es "sockets" y limitando la búsqueda al directorio actual (mediante el punto .). Una función muy útil en cuanto a auditorias de seguridad es la búsqueda de ficheros por permisos: Código
El ejemplo de arriba busca todos los ficheros situados en el directorio actual y que tengan permisos de ejecución para "el grupo". Otra función bastante útil puede ser la búsqueda de ficheros vacíos: Código
Eso buscara todos los ficheros vacíos de la carpeta personal del usuario. Podemos buscar los ficheros mas grandes del sistema: Código
Eso buscara los tres ficheros mas grandes de la carpeta "this" o en la que estamos. Usando la búsqueda por tipo podemos por ejemplo, buscar todos los ficheros ocultos: Código
Recuerdo que en Unix/Linux los ficheros ocultos tienen un punto delante del nombre, en este caso se buscan todos los que empiezan por un punto, o sea, todos los ocultos. Otra función bastante útil es la búsqueda de ficheros por tamaño: Código
Encontrara todos los ficheros mayores de diez megas en la carpeta personal del usuario. Para las operaciones que mas usamos, podemos crear un alias: Código
Ese alias, al ejecutarlo, borrara todos los ficheros con el nombre "a.out" encontrados en el directorio actual. Este artículo está basado en 15 Practical Linux Find Command Examples (http://www.thegeekstuff.com/2009/03/15-practical-linux-find-command-examples/). En el blog del autor, podéis encontrar la segunda parte del artículo: 15 Awesome Linux Find Command Examples (Part2) (http://www.thegeekstuff.com/2009/06/15-practical-unix-linux-find-command-examples-part-2/). Título: Re: Introducción al comando Find Publicado por: leogtz en 28 Julio 2011, 22:44 pm Muy buen aporte, me ha gustado.
Otra cosa que comentar es la posibilidad de usar expresiones regulares para encontrar los archivos. :D Título: Re: Introducción al comando Find Publicado por: portaro en 28 Julio 2011, 22:55 pm GRacias magnifico aporte.
|