Como pesquisar e encontrar arquivos recursivamente no Linux

Como pesquisar e encontrar arquivos recursivamente no Linux
Este breve tutorial explica como pesquisar e encontrar os arquivos recursivamente nos sistemas operacionais Linux.

Depois de ler este artigo, você poderá encontrar qualquer arquivo recursivamente usando as diferentes técnicas, incluindo uma única pesquisa de arquivos, pesquisa de vários arquivos, localização de arquivos por permissões e mais. Este documento é otimizado para usuários de Linux novos e experientes. Todos os métodos são válidos para cada distribuição Linux.

Todos os exemplos deste tutorial contêm capturas de tela para facilitar para qualquer usuário do Linux entendê -los e reproduzi -los.

Encontrar arquivos recursivamente no Linux

O comando find não precisa de sinalizadores para pesquisar os arquivos recursivamente no diretório atual. Você só precisa definir o diretório principal e o nome do arquivo usando o -nome opção. Este comando pesquisará o arquivo no diretório principal e todos os subdiretos.

A sintaxe é simples, como mostrado no seguinte:

Encontre -name

Se você quiser encontrar o 27.jpg Arquivo dentro do seu diretório e subdiretos domésticos, execute o seguinte comando, conforme mostrado na captura de tela a seguir:

Encontre ~/ -name 27.jpg

Como você pode ver, o arquivo foi encontrado no /home/linuxhint/downloads/recorrente subdiretório.

Uma alternativa ao comando anterior é o árvore Comando mostrado no exemplo a seguir em que você pesquisa o mesmo arquivo nomeado 27.jpg dentro do diretório atual:

Árvore -p 27.jpg

Como você pode ver na figura anterior, o formato é bem diferente. Parece ser mais amigável ou melhor, desde que você não precise copiar o caminho completo para colá -lo.

A captura de tela a seguir mostra como usar o comando encontre para pesquisar recursivamente mais do que um arquivo.

A sintaxe para pesquisar vários arquivos recursivamente é o seguinte:

encontrar . \ (-name -o -name "\)

Observe que existe um -o sinalizador antes do segundo nome do arquivo. Você pode adicionar mais de um arquivo adicionando mais -o -nome bandeiras. Por exemplo, para encontrar 4 arquivos com o mesmo comando, use a seguinte sintaxe:

encontrar . \ (-name -o -name -o -name "\)

No exemplo prático descrito na imagem a seguir, use este comando para encontrar um arquivo nomeado 27.jpg e um arquivo cujo nome começa com “DIAGRAMA”Mas sem especificar sua extensão. Em vez disso, use um curinga (*) para encontrar qualquer arquivo nomeado DIAGRAMA independentemente do seu tipo.

encontrar . \ (-name 27.jpg -o -name "diagrama*" \)

Como você pode ver na imagem anterior, ambos os arquivos foram encontrados recursivamente.

O próximo exemplo descreve como encontrar os arquivos por extensão usando o encontrar comando. Na figura a seguir, você pode ver como encontrar recursivamente todos os .jpg arquivos usando o curinga novamente. A sintaxe é bem simples:

Encontre ~/ -Type f -name "*."

Assim, para encontrar todo o .jpg Arquivos recursivamente, execute o seguinte comando:

Encontre ~/ -Type f -name "*.jpg "

Conforme mostrado na imagem anterior, todos os arquivos JPG, incluindo seu caminho, estão listados com sucesso. Você pode substituir o .Extensão JPG para qualquer extensão que você deseja pesquisar como .png, .TXT, .c e mais.

Agora, vamos supor que você não queira encontrar um arquivo, mas um diretório recursivamente. Tudo o que você precisa fazer é usar o mesmo comando que foi mostrado no primeiro exemplo deste tutorial e depois adicionar o -Tipo d opção. A sintaxe da seguinte maneira:

Encontre ~/ -Type d -name

No exemplo prático a seguir, use a sintaxe anterior para encontrar o Recur diretório.

Encontre ~/ -Type d -name Recur

Como você vê na figura anterior, o diretório chamado "Recur" foi encontrado com sucesso.

Você também pode encontrar os arquivos por tamanho usando a seguinte sintaxe, onde está o diretório principal que contém os subdiretos e o tamanho dos arquivos que você pode listar com o caminho completo deles.

sudo encontre -Size

O exemplo a seguir descreve como encontrar os arquivos de tamanho de 10 MB. Você pode substituir as unidades definidoras de M em Mb com c para bytes, c Para duas palavras de dois bytes, k para kibytes e G Para Gibibytes (as unidades de nota são sensíveis ao caso).

Para encontrar os 10 arquivos mebibytes, execute o seguinte comando:

sudo encontre /var -size 10m

Todos os arquivos de 10m foram listados corretamente com seus caminhos.

A sintaxe para encontrar os arquivos com base em suas permissões é mostrada no seguinte:

Encontre ~ Perm

Vamos supor que você deseja identificar e listar os arquivos com permissões de leitura, gravação e execução (777). O comando a ser executado é o seguinte:

Encontre ~/ -perm 777

O último exemplo deste tutorial mostra como encontrar e listar os arquivos e diretórios por tamanho.

du -hs ~/*

Como mostrado, os arquivos são listados por tamanho com unidades adequadas. Os 0 tamanhos de tamanho e arquivos estão vazios.

Conclusão

A versatilidade e flexibilidade do Linux permitem encontrar os arquivos (e outras funções) recursivamente de várias maneiras. Eles podem ser facilmente executados por todos os usuários do Linux independentemente de seu nível de conhecimento, dos novos usuários para os administradores do sistema. Todas as técnicas descritas anteriormente são válidas para todas as distribuições Linux e até para alguns sistemas Unix. De acordo com as páginas do homem, algumas bandeiras podem variar em algumas distribuições, mas a maioria delas é universal. Caso sua distribuição Linux não corresponda a nenhum dos comandos explicados anteriormente, você pode ler a página do homem. É altamente recomendado aos leitores praticar os exemplos para incorporar este conhecimento.

Muito obrigado por ler este tutorial do Linux. Continue nos seguindo para mais dicas profissionais do Linux.