Pesquisa de site

35 exemplos práticos de comando Find do Linux


O comando find do Linux é um dos utilitários de linha de comando mais importantes e frequentemente usados em sistemas operacionais do tipo Unix. O comando find é usado para procurar e localizar uma lista de arquivos e diretórios com base nas condições que você especifica, correspondendo aos argumentos.

O comando find oferece uma ampla gama de opções, permitindo aos usuários aproveitá-lo em diversas condições. Ele permite que indivíduos pesquisem arquivos com base em vários critérios, incluindo permissões, usuários, grupos, tipos de arquivos, datas, tamanhos e vários outros parâmetros.

Neste artigo, apresentaremos 35 dos exemplos mais comumente usados de comandos Find no Linux. Dividimos esta seção em cinco partes, cobrindo o uso do comando find do nível básico ao avançado.

Parte I – Comandos básicos de localização para encontrar arquivos com nomes

Quando se trata de encontrar arquivos com nomes específicos, o comando find oferece uma gama de opções para agilizar o processo. Aqui estão alguns comandos básicos de localização para localizar arquivos com base em seus nomes.

1. Encontre arquivos usando o nome no diretório atual

Encontre todos os arquivos cujo nome é tecmint.txt em um diretório de trabalho atual.

find . -name tecmint.txt

./tecmint.txt

2. Encontre arquivos no diretório inicial

Encontre todos os arquivos no diretório /home com o nome tecmint.txt.

find /home -name tecmint.txt

/home/tecmint.txt

3. Encontre arquivos usando nome e ignorando maiúsculas e minúsculas

Encontre todos os arquivos cujo nome é tecmint.txt e contém letras maiúsculas e minúsculas no diretório /home.

find /home -iname tecmint.txt

./tecmint.txt
./Tecmint.txt

4. Encontre diretórios usando o nome

Encontre todos os diretórios cujo nome é Tecmint no diretório /.

find / -type d -name Tecmint

/Tecmint

5. Encontre arquivos PHP usando o nome

Encontre todos os arquivos php cujo nome é tecmint.php em um diretório de trabalho atual.

find . -type f -name tecmint.php

./tecmint.php

6. Encontre todos os arquivos PHP no diretório

Encontre todos os arquivos php em um diretório.

find . -type f -name "*.php"

./tecmint.php
./login.php
./index.php

Parte II – Encontre arquivos com base em suas permissões

Aqui estão alguns exemplos de comandos find para localizar arquivos com base em suas permissões.

7. Encontre arquivos com permissões 777

Encontre todos os arquivos cujas permissões são 777.

find . -type f -perm 0777 -print

8. Encontre arquivos sem permissões 777

Encontre todos os arquivos sem permissão 777.

find / -type f ! -perm 777

9. Encontre arquivos SGID com permissões 644

Encontre todos os arquivos de bit SGID cujas permissões estão definidas como 644.

find / -perm 2644

10. Encontre arquivos Sticky Bit com 551 permissões

Encontre todos os arquivos do conjunto Sticky Bit cuja permissão é 551.

find / -perm 1551

11. Encontre arquivos SUID

Encontre todos os arquivos do conjunto SUID.

find / -perm /u=s

12. Encontre arquivos SGID

Encontre todos os arquivos do conjunto SGID.

find / -perm /g=s

13. Encontre arquivos somente leitura

Encontre todos os arquivos somente leitura.

find / -perm /u=r

14. Encontre arquivos executáveis

Encontre todos os arquivos Executáveis.

find / -perm /a=x

15. Encontre arquivos com permissões 777 e Chmod para 644

Encontre todos os arquivos de permissão 777 e use o comando chmod para definir as permissões para 644.

find / -type f -perm 0777 -print -exec chmod 644 {} \;

16. Encontre diretórios com permissões 777 e Chmod para 755

Encontre todos os diretórios de permissão 777 e use o comando chmod para definir as permissões para 755.

find / -type d -perm 777 -print -exec chmod 755 {} \;

17. Encontre e remova um único arquivo

Para encontrar um único arquivo chamado tecmint.txt e removê-lo.

find . -type f -name "tecmint.txt" -exec rm -f {} \;

18. Encontre e remova vários arquivos

Para localizar e remover vários arquivos, como .mp3 ou .txt, use.

find . -type f -name "*.txt" -exec rm -f {} \;

OR

# find . -type f -name "*.mp3" -exec rm -f {} \;

19. Encontre todos os arquivos vazios

Para encontrar todos os arquivos vazios em um determinado caminho.

find /tmp -type f -empty

20. Encontre todos os diretórios vazios

Para arquivar todos os diretórios vazios em um determinado caminho.

find /tmp -type d -empty

21. Arquive todos os arquivos ocultos

Para encontrar todos os arquivos ocultos, use o comando abaixo.

find /tmp -type f -name ".*"

Parte III – Pesquisar arquivos com base em proprietários e grupos

Aqui estão alguns exemplos de comandos find para localizar arquivos com base em proprietários e grupos:

22. Encontre um único arquivo com base no usuário

Para localizar todos ou apenas arquivos chamados tecmint.txt no diretório raiz / da raiz do proprietário.

find / -user root -name tecmint.txt

23. Encontre todos os arquivos com base no usuário

Para encontrar todos os arquivos que pertencem ao usuário Tecmint no diretório /home.

find /home -user tecmint

24. Encontre todos os arquivos com base no grupo

Para encontrar todos os arquivos que pertencem ao grupo Desenvolvedor no diretório /home.

find /home -group developer

25. Encontre arquivos específicos do usuário

Para encontrar todos os arquivos .txt do usuário Tecmint no diretório /home.

find /home -user tecmint -iname "*.txt"

Parte IV – Encontre arquivos e diretórios com base em data e hora

Aqui estão alguns exemplos de comandos find para localizar arquivos e diretórios com base em data e hora.

26. Encontre os arquivos modificados nos últimos 50 dias

Para encontrar todos os arquivos que foram modificados há 50 dias.

find / -mtime 50

27. Encontre os arquivos acessados nos últimos 50 dias

Para encontrar todos os arquivos que foram acessados há 50 dias.

find / -atime 50

28. Encontre os arquivos modificados nos últimos 50-100 dias

Para encontrar todos os arquivos que foram modificados há mais de 50 dias e menos de 100 dias.

find / -mtime +50 –mtime -100

29. Encontre arquivos alterados na última hora

Para encontrar todos os arquivos que foram alterados na última 1 hora.

find / -cmin -60

30. Encontre arquivos modificados na última hora

Para encontrar todos os arquivos que foram modificados na última 1 hora.

find / -mmin -60

31. Encontre os arquivos acessados na última hora

Para encontrar todos os arquivos acessados na última 1 hora.

find / -amin -60

Parte V – Encontre arquivos e diretórios com base no tamanho

Aqui estão alguns exemplos de comandos find para localizar arquivos e diretórios com base no tamanho.

32. Encontre arquivos de 50 MB

Para encontrar todos os arquivos de 50 MB, use.

find / -size 50M

33. Encontre o tamanho entre 50 MB – 100 MB

Para encontrar todos os arquivos maiores que 50 MB e menores que 100 MB.

find / -size +50M -size -100M

34. Encontre e exclua arquivos de 100 MB

Para encontrar todos os arquivos de 100 MB e excluí-los usando um único comando.

find / -type f -size +100M -exec rm -f {} \;

35. Encontre arquivos específicos e exclua

Encontre todos os arquivos .mp3 com mais de 10 MB e exclua-os usando um único comando.

find / -type f -name *.mp3 -size +10M -exec rm {} \;

É isso, encerramos este post aqui. Em nosso próximo artigo, discutiremos em profundidade outros comandos do Linux com exemplos práticos. Deixe-nos saber sua opinião sobre este artigo usando nossa seção de comentários.