Localiza arquivo ou diretório em toda a estrutura de diretórios

11

Como posso encontrar um arquivo com um nome específico no bash? Eu quero pesquisar por todo o sistema. Eu tentei encontrar, mas isso só funciona através de um nível.

    
por RocketMan 27.11.2011 / 22:30

1 resposta

17

Não, find por padrão percorre todos os níveis disponíveis:

sudo find / -mount -name 'myfilename'

Se você tiver uma partição residencial separada, uma casa criptografada ou uma unidade de disco rígido secundária, também poderá listar seus pontos de montagem, ao lado de / , por exemplo

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

A opção -mount é necessária para evitar a travessia de sistemas de arquivos montados. Entre eles, há /proc , /dev e /sys , que é conveniente para pular.

Uma alternativa para percorrer todos os arquivos, evitando apenas esses últimos três caminhos é

sudo find /!(proc|sys|dev) -name 'myfilename'
    
por enzotib 27.11.2011 / 22:39