InicioLinuxTutorial: ¿Cómo encontrar cosas en Linux?

Tutorial: ¿Cómo encontrar cosas en Linux?

Linux5/23/2009

“¿Cómo encontrar cosas en Linux?", “¿Cómo buscar en Linux?", entre otras preguntas, son las que naturalmente nos formularemos tarde o temprano. Sin más preambulos, comencemos a estudiar el comando find.

Primero, lo primero; debes leerte el man page de find.

Bajo circunstancias normales, de haber sido un man page corto, o de tamaño moderado; ciertamente lo hubiese traducido. Pero el tamaño de ese documento dificulta las cosas.

1. Lo básico:

Si ejecutas find sin pasarle ningún paramentro, intentará encontrar todos los directorios y subdirectorios, ficheros, etc., a partir del lugar donde lo ejecutes.

Evidentemente, ejecutarlo sin pasarle parametros no tendría ninguna utilidad, de modo que el primer parametro que deberiamos pasarle, debe ser la ruta donde se ejecutará la busqueda, y el segundo parametro, el nombre del fichero que queremos buscar.

e.g, Digamos que quiero buscar un fichero llamado pepito.txt , en mi directorio HOME, haría algo como lo siguiente:

# find /home/jespinal/ -name "pepito.txt"

donde /home/jespinal es el nombre de mi directorio HOME, y pepito.txt es el nombre del fichero, el cual encerramos en comillas ( "" ), esto no es realmente obligatorio (a menos que uses caracteres comodines como ‘*’ o ‘?’, los cuales podrian ser interpretados por la consola como una ruta en donde buscar en vez de algo que forma parte del nombre), pero es buena practica porque te permite buscar nombres con espacios de por medio, ej. ‘mi lista.txt’

2. Avanzando un poco

Puede darse el caso donde no sabemos exactamente el nombre del fichero, sino que sabemos que dicho nombre comenzaba con ‘pep’; y no solo eso, sino que tampoco sabemos donde esta ubicado exactamente.

Sencillo, sin importar donde este, obviamente estara en un subdirectorio en algun lugar debajo de nuestro directorio raiz ( / ), asi que empezaremos la busqueda desde ahi. Y ya que no sabemos el nombre exacto del fichero, le daremos a find lo que tenemos (A final de cuentas, quien debe buscar es el, no nosotros )

e.g Escribiriamos algo como lo siguiente:

# find / -name "*pep*"

y listo.

Como nota adicional, fijate que delante de ‘pep’ (que eran los unicos caracteres que inicialmente sabiamos que estaban contenidos en el nombre del fichero) he puesto un asterisco ( * ), tambien detras.
El asterisco basicamente significa ‘cualquier cosa’, o ‘cualquier combinacion de texto’.

Estamos diciendole a find que busque, a partir de / (root), algo (ya sea fichero o directorio) cuyo nombre comience con ‘cualquier cosa’ seguida de los caracteres ‘pep’, y que termine con ‘cualquier cosa’.

Dentro de los posibles valores que puede valer el asterisco, esta la posibilidad de que no haya ningun caracter; o sea, si aparece un fichero (o directorio) llamado pepsi.txt, sipep.txt, pep.txt, sopepto.txt, entonces find te lo dira, ya que todos coinciden con el parametro de busqueda que diste para el nombre.

3. Ser mas exigente con la busqueda

Recuerda que find va a buscar lo que le digas que busque, de acuerdo a la manera que se lo digas, y será tan preciso en los resultados como tu lo seas en los parámetros que le pasas.

Si le pasas parámetros poco precisos, no esperes que find te traiga solo resultados de lo que tu estabas esperando.

Imagina que quieres ver los ficheros regulares que tienes en tu directorio HOME.
OJO: dije ficheros regulares, no directorios, no symbolic links (vinculos simbolicos), ni tampoco pipes, FICHEROS!

Para eso solo tienes que indicarle a find el tipo, que es ‘f’,

La tabla de posibles tipos de ficheros es la siguiente:

b bloque especial
c caracter especial
d direcotorio
p tuberia (pipe)
f fichero regular
l vínculo simbolico (leete el man page para que veas unas cuantas especificaciones)
s socket
D Puerta (Solaris)

Para el ejemplo previo, tendríamos que ejecutar algo como esto:

# find /home/jespinal -type f


Continuar leyendo & Ejemplos practicos...
Datos archivados del Taringa! original
0puntos
938visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
3visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

j
jespinal🇦🇷
Usuario
Puntos0
Posts16
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.