Buscar archivo o directorio en toda la estructura de directorios

14

¿Cómo puedo encontrar un archivo con un nombre específico en bash? Quiero buscar en todo el sistema. Intenté con find, pero eso solo funciona a través de un nivel.

RocketMan
fuente

Respuestas:

20

No, findpor defecto atraviesa todos los niveles disponibles:

sudo find / -mount -name 'myfilename'

Si tiene una partición doméstica separada, o una casa encriptada, o un disco duro secundario, es posible que también desee enumerar sus puntos de montaje, junto a / , por ejemplo

sudo find / /home/enzotib /media/data -mount -name 'myfilename'

La -mountopción es necesaria para evitar atravesar sistemas de archivos montados. Entre estos hay /proc,/dev y /sys, que es conveniente omitir.

Una alternativa para recorrer todos los archivos, evitando solo estas tres últimas rutas es

sudo find /!(proc|sys|dev) -name 'myfilename'
enzotib
fuente
para encontrar todos los archivos que comienzan con "my" do: find. -name my \ * (bash interpretaría la estrella si no hubiera una barra)
krumpelstiltskin