Terminal Linux – Procurar ficheiros em Linux

Por: André Paula
Tempo de leitura: 3 min

O digital está cada vez mais presente nas nossas vidas e a quantidade de dados que são acumulados ao longo dos anos em discos é enorme, para não falar na quantidade de informação que empresas diariamente guardam em servidores. Por isso, procurar informação é quase que inevitável nos dias atuais e um comando que ajuda nesse processo e já faz parte de qualquer distribuição Linux é o: find.

Ele procura por ficheiros em pastas e tem uma quantidade enorme de opções que podem ser combinadas e facilitar a procura, mas é importante definirem bem o que procurar e onde, pois podem não obter todos os resultados, em especial ficheiros a iniciar com números, caracteres especiais, ou maiúsculas e minúsculas.

Vamos dar alguns exemplos mais simples:

1 – Procurar por imagens com extensão .jpg no diretório atual

  • find . -name \*.jpg

. – O ponto final indica o diretório atual
-name – É o nome do ficheiro ou extensão que querem encontrar
* – O asterisco indica qualquer caractere antes do .jpg

Após correr o comando acima, a lista de informação poderá ser grande. Para facilitar a visualização, usem o comando less no fim:

  • find . -name ‘*.jpg’ | less

 

2 – Procurar por imagens .jpg por tamanho

  • find . -name ‘*.jpg’ -type f -size +10M | less

 

3 – Procurar por imagens .jpg por tamanho, mas adicionar a um ficheiro .tar no diretório atual

  • find . -name *.jpg -type f -size +10M -size -50M -exec tar cvf fotos_grandes.tar {} \;

– type – Representa o tipo de ficheiro, no exemplo acima f (file)
– size – É o tamanho que pode ser definido com + ou – conforme a vossa pesquisa.
– exec – Executa um comando
– tar – Programa para arquivar vários ficheiros

 

3 – Procurar por ficheiros com a palavra Pcguia, mas sem levar em conta letras maiúsculas.

  • find . -iname *pcguia*

 

4 – Procurar por ficheiros vazios e elimina-los

  • find . -empty -type f -exec rm -f {} \;

 

5 – Procurar por pastas vazias e elimina-las

  • find . -empty -type d -exec rmdir {} \;

 

6 – Procurar ficheiros modificados nas ultimas 24h na pasta downloads

  • find /downloads/ -ctime 1

 

7 – Procurar ficheiros acedidos à mais de 30 dias

  • find . -atime 30

 

8 – Procurar ficheiros de um utilizador no diretório /

  • sudo find / -user jpaula

 

Estes foram apenas alguns exemplos de como encontrar algum ficheiro pela linha de comandos usando o find. Podem saber mais informação através do manual do comando: man find.
Espero que tenham gostado de mais um guia e deixem nos comentários alguma sugestão.

Seguir:
Estar sempre actualizado com as novidades tecnológicas é para mim importante, em especial com tudo o que esteja relacionado com open source, linux e software livre, por isso tenho um podcast e escrevo sobre estes temas.
Exit mobile version