Como buscar arquivos no Linux

Saber quais comandos utilizar para localizar arquivos e fazer outros processos nos sistemas Linux/Unix é muito importante. É possível encontrar arquivos pelo seu nome, autor, tipo, permissões, data, etc. Essa pesquisa, também funciona com sub-diretórios. E se você está começando a utilizar o sistema agora e quer alguns exemplos de comandos úteis para você, na lista abaixo, apresentamos dez deles. 

 
1. Para encontrar o caminho de todos os arquivos e sub-diretórios, utilize os comandos:

vpscheap#:~$ find .

vpscheap#:~$ find . -print

vpscheap#:~$ find -print

2. Para encontrar arquivos pelo nome no diretório atual:
Digamos que o arquivo desejado chama-se "vpscheap.txt", ele pode ser encontrado utilizando os seguintes comandos. 

vpscheap#:~$ find -name vpscheap.txt
./vpscheap.txt
./Downloads/vpscheap.txt
./Documents/vpscheap.txt

ou

vpscheap#:~$ find . -name vpscheap.txt
./vpscheap.txt
./Downloads/vpscheap.txt
./Documents/vpscheap.txt

3. Para encontrar arquivos em um diretório particular:

vpscheap#:~$ find /home/ -name vpscheap.txt
/home/vpscheap/vpscheap.txt
/home/vpscheap/Downloads/vpscheap.txt
/home/vpscheap/Documents/vpscheap.txt

4. Para encontrar arquivos em todo o computador:

vpscheap#:~$ sudo find / -name vpscheap.txt
/home/vpscheap/vpscheap.txt
/home/vpscheap/Downloads/vpscheap.txt
/home/vpscheap/Documents/vpscheap.txt

O comando acima vai pesquisar pelo arquivo "vpscheap.txt" em todo o sistema, incluindo o diretório de root e todos os sub-diretórios. 


5. Encontrar arquivos ignorando letras maiúsculas ou minúsculas: 

vpscheap#:~$ find -iname vpscheap.txt
./vpscheap.txt
./Downloads/vpscheap.txt
./Documents/vpscheap.txt


6. Limitar a busca até um nível de diretório específico:

vpscheap#:~$ find -maxdepth 2 -name vpscheap.txt
./vpscheap.txt
./Downloads/vpscheap.txt
./Documents/vpscheap.txt

No exemplo acima, será possível encontrar o arquivo vpscheap.txt em até um nível de diretório. Se quiser dois ou mais níveis, especifique a quantidade com "-maxdepth". No exemplo abaixo, foi utilizado o número 3. 

 

vpscheap#:~$ find -maxdepth 3 -name vpscheap.txt
./vpscheap.txt
./Downloads/vpscheap.txt
./Downloads/vpscheap/vpscheap.txt
./Documents/vpscheap.txt

7. Encontrar um arquivo pelo seu formato:
Digamos que você queria encontrar um arquivo no formato .FLV, veja o exemplo:

vpscheap#:~$ find -type f -name *.FLV
./Entertainment/Video Songs/RightNow.FLV

8. Encontrar arquivos pelo seu tamanho:
No exemplo abaixo, o usuário deseja encontrar arquivos que tenham 1GB ou mais. 

vpscheap#:~$ find -size +1G 
./VirtualBox VMs/Ubuntu 12.10 server_ 1 nic_ Internet_ Bridge/Ubuntu 12.10 server_ 1 nic_ Internet_ Bridge.vdi
./Soft_Backup/OS Images/CentOS-6.3-i386-bin-DVD2.iso
./Soft_Backup/OS Images/CentOS-6.3-i386-bin-DVD1.iso
./Soft_Backup/OS Images/Win 7 Pro.iso

Para encontrar esses arquivos em uma pasta de diretório específica, o comando é:

vpscheap#:~$ find Soft_Backup/ -size +1G 
Soft_Backup/OS Images/CentOS-6.3-i386-bin-DVD2.iso
Soft_Backup/OS Images/CentOS-6.3-i386-bin-DVD1.iso
Soft_Backup/OS Images/Win 7 Pro.iso

Se forem arquivos com menos de 1GB, então o comando será:

vpscheap#:~$ find -size -1G

E se desejar encontrar arquivos de um tamanho específico, é só não inserir "-" ou "+". 

vpscheap#:~$ find -size 10M

9. Localizar arquivos pelo nome do seu proprietário ou grupo:
No exemplo abaixo, o nome do usuário é "vpscheap".

vpscheap#:~$ find -user vpscheap -name vpscheap.txt
./vpscheap.txt
./Downloads/vpscheap.txt
./Downloads/vpscheap/vpscheap.txt
./Documents/vpscheap.txt

Para encontrar arquivos de um grupo, basta substituir "user" por "group".

vpscheap#:~$ find -group vpscheap -name vpscheap.txt
./vpscheap.txt
./Downloads/vpscheap.txt
./Downloads/vpscheap/vpscheap.txt
./Documents/vpscheap.txt

10. Encontrar arquivos de acordo com suas permissões
Buscar um arquivo particular cujas as permissões sejam 777:

vpscheap#:~$ find -perm 777 -name vpscheap.txt

Buscar todos os arquivos com as permissões 777:

vpscheap#:~$ find -perm 777

Buscar arquivos que as permissões sejam somente para leitura:

vpscheap#:~$ find -perm /u=r

Buscar todos os arquivos que as permissões permitam que eles sejam executados:

vpscheap#:~$ find -perm /a=x

E para qualquer informação sobre o uso de comandos, você pode acessar:

vpscheap#:~$ man find
 
  • linux, arquivos
  • 1 Usuários acharam útil
Esta resposta lhe foi útil?

Artigos Relacionados

Como reiniciar a rede Ubuntu?

O reiniciamento da interface de rede Ubuntu só pode ser realizado depois que a interface de rede...

Como saber a última vez que um usuário esteve logado no sistema Linux?

  Neste tutorial, você irá conseguir saber como verificar quem usou recentemente o servidor...

Como saber o quanto de RAM ainda há no sistema?

  Alguns usuários pensam que o Linux "rouba" espaço de memória RAM não utilizada para o seu...

Como otimizar seu MySQL

Para realizar otimização do MySQL é recomendado utilizar o mysqlmymonlite.sh...

Como se conectar remotamente com um servidor MySQL

Esse é um tutorial que irá lhe ensinar a como se configurar e se conectar a um servidor MySQL...

SiteLock