Buscar archivos desde linea de comandos

En determinadas distribuciones de Linux como puede ser Ubuntu, las opciones gráficas para buscar archivos no siempre es muy buena.

Voy a hablaros acerca de dos herramientas usadas para realizar esta tarea. Con un poco de paciencia las podrás dominar sin problemas.

Locate

El comando mas sencillo y rápido es “locate”. Para usar este comando simplemente entramos en la terminal y escribimos:

locate -i busqueda

Esto buscara por todos los ficheros y directorios que contengan “busqueda” en su nombre, el parametro -i indica que la busqueda no es sensible a las mayúsculas.

El resultado es casi instentaneo debido a que nuestro sistema crea una base de datos ( también conocida como índice) . La cual nos dice donde se encuentran nuestros archivos.

El problema de esta base de datos, es que si el archivo fue creado recientemente o movido, no funcionará correctamente hasta la siguiente actualización de esta base de datos.

Puedes forzar esta actualización usando:

sudo updatedb

Find

Existe una herramienta mucho mas poderosa llamada “find”.

Puedes decirle a “find” donde buscar y que criterio de búsqueda tiene que usar además de que acciones debe realizar una vez lo ha encontrado.

Su sintaxis es:

find 'donde buscar' 'criterio de búsqueda' 'acciones a realizar'

Si no añades parámetros, find buscará por defecto en el directorio actual. No usará criterio de búsqueda(Muestra todos los ficheros por defecto). Y como acción por defecto, usa -print, lo que indica que muestra el resultado en pantalla.

Ejemplo

sudo find / -type f -mmind -10

Este ejemplo buscará empezando en nuestro directorio raiz y de forma recursiva ( busca en subdirectorios).  Todos los ficheros normales (-type f) si no pusieramos este parámetro, también buscaría ficheros especiales y directorios. Por último el parametro -mmind -10 nos muestra los ficheros que fueron modificados hace 10 minutos o menos y luego nos lo imprime en pantalla.

Esto sería útil si editaste un archivo recientemente pero no sabes donde lo has metido o si tienes que buscar un log de un programa que ha fallado.

Puedes añadir sudo porque find no busca archivos o directorios que el usuario actual no tenga permisos para ver. En caso de que no tengas permisos de sudoer simplemente nos devolvera un mensaje de error.

4 comentarios en «Buscar archivos desde linea de comandos»

Deja una respuesta

Tu dirección de correo electrónico no será publicada.