Tip: 5 consejos para usar el comando GNU Find

Al momento de tener que realizar búsquedas de archivos en nuestro sistema operativo GNU/Linux, una de las mejores formas de realizarlo es a través de consola utilizando el comando Find. Este comando es útil cuando sabemos que tenemos un archivo guardado en alguna parte del disco, pero no recordamos bien donde, o como se llama, o su tamaño, o quien es el propietario, etc.

En los sistemas operativos basados en Unix, el comando Find es una utilidad muy potente y a su vez uno de los más útiles en lo que a línea de comandos respecta. A simple vista, su sintaxis puede aparentar un tanto difícil, pero con un poco de práctica podemos ser capaces de localizar cualquier archivo en el sistema sin inconveniente alguno.

Para facilitarnos el camino y para comenzar a utilizar el comando Find, la gente de Linux.com elaboró una lista con consejos útiles.

Uso básico

Comencemos con el uso básico de este comando. Si estamos buscando un archivo y conocemos su nombre, pero no donde esta guardado, tan solo deberemos tipear lo siguiente:

$ find -name nombre-del-archivo

El resultado será algo como lo siguiente:

$ find -name preview.jpg

./Descargas/preview.jpg

Es posible también que necesitemos buscar un archivo en un directorio específico:

$ find /home/Documentos nombre-del-archivo

Si queremos especificarle a Find que sólo busque archivos que esten situados en el directorio actual, utilizamos el caracter “.” en el comando:

$ find . -name nombre-del-archivo

Por otra parte, la opción -name difiere entre mayúsculas y minúsculas. Si queremos realizar búsquedas sin esta diferenciación, utilizamos la opción -iname:

$ find -iname nombre-del-archivo

Buscar archivos por tamaño

A veces, suele suceder que no tenemos el nombre del archivo, entonces es necesario utilizar otros parámetros de búsqueda. Por ejemplo, la búsqueda de archivos por tamaño. La opción para buscar por tamaño es -size, seguido por el tamaño que queremos buscar. Si queremos buscar archivos de 100k, debemos ejecutar lo siguiente:

$ find -size 100k

Este método lo utilizamos para encontrar archivos de un tamaño específico. Pero puede suceder que necesitemos buscar archivos de tamaños menores o mayores a 100k. Para ello utilizaremos los signos + o -.

$ find -size +100k

Este comando encontrará todos los archivos mayores a 100k.

$ find -size -100k

Este comando encontrará todos los archivos menores a 100k.

Encontrar archivos por usuario

Otra forma práctica de encontrar archivos, es por medio de su propietario. Es decir, buscar archivos por el usuario que lo creó. Supongamos que en primera instancia buscamos archivos huérfanos, para encontrarlos utilizamos lo siguiente:

$ find -nouser

Si necesitamos encontrar archivos que pertenecen a un usuario específico, utilizamos la opción -user o -uid. La opción -uid nos permite buscar archivos por número de usuario ID; y la opción -user permite buscar archivos por nombre de usuario o UID. Por ejemplo, si yo quisiera encontrar todos mis archivos en un directorio, utilizo el siguiente comando:

$ find -user ezequiel

O por número de usuario ID:

$ find -user 1000

ò

$ find -uid 1000

También es posible que necesitemos buscar un archivo que son de un usuario o de otro. A esto podemos realizarlo agregando la opción -o:

$ find -user root -o -user ezequiel

Esto encontrará todos los archivos que son propiedad de root o ezequiel. Pero puede ser también que necesitemos buscar archivos que no son de tal usuario, para ello agregamos la opción -not:

$ find -not -user ezequiel

Tambien podemos optar por buscar archivos que pertenecen a un usuario y que no son más grandes que un determinado tamaño:

$ find -user ezequiel -not -size +100k

Encontrar archivos por grupo

Otra forma de buscar archivos es por grupo, utilizando la opción -group. A esta opción debemos agregarle el nombre del grupo o el número de grupo ID (GID). La forma de buscarlo es la siguiente:

$ find -group nombre-del-grupo

Encontrar archivos por permisos

En algún momento es posible que necesitemos comprobar el sistema de archivos mediante la búsqueda de archivos que están con permisos de escritura o que tienen un permiso equivocado. Para realizar este tipo de búsquedas podemos utilizar las opciones: -readable, -writable y -executable. Estos parámetros buscarán si los archivos tienen permisos de lectura, escritura o de ejecución.

Otra opción es buscar archivos por permiso utilizando la opción -perm. Por ejemplo, si necesitamos encontrar archivos con un permiso específico:

$ find -name ‘*.txt’ -perm 644

O si necesitamos encontrar archivos con ciertos permisos:

$ find -perm -«permisos»

Cabe destacar que en todo momento podremos acceder al manual del comando Find tipeando en consola lo siguiente:

$ man find

Deja un comentario

This site uses Akismet to reduce spam. Learn how your comment data is processed.