—
Linux o que é o comando find?
Um dos mais importantes e usados comandos da linha de comando em sistemas operacionais Linux é o find.
Para que serve o comando find?
O find (localização) pode ser usado em várias condições. Posso encontrar arquivos por permissões, usuários, grupos, tipo de arquivo, data, tamanho e outros critérios.
Aprender o comando find?
Para aprender, o modo mais seguro é criar uma pasta na pasta pessoal chamada TESTE. Ela servirá para realizar os estudos. Criar na pasta TESTE arquivos:
texto.txt
Texto.doc
texto
texto4.docx
texto.html
postado.html
musica.mp3
mucic
video.mkv
Video.mp4
video.avi
Video
script.sh
script2.sh
script
img.jpg
imge.png
imagem.jpeg
img
arq.pdf
arquivo.epub
arq
bkp.zip
back.tar
bkp.old.tgz
bkp
teste.txt
test.txt
test
script.c
script2.c
script
—
Atenção!
1) Não execute nenhum comando como root.
2) Não use sudo em nenhum comando.
3) Tenha backup de todos os seus arquivos. Quem tem 1 backup não tem nenhum.
—
Para serem localizados pelo comando find usando vários critérios.
Iniciar os estudos.
Encontrar arquivos na pasta onde está é com ponto -name. Exemplo:
find . -name texto.txt
Encontrar arquivos na pasta pessoal:
find ~/ -name Texto.txt
Localizar arquivos usando nome e ignorando maiúsculas e minúsculas:
find . -iname texto.txt
find ~/TESTE/ -iname video.mkv
Encontrar diretórios usando -name:
find ~/ -type d -name TESTE
Encontrar arquivos usando ponto -type f -name:
find . -type f -name bkp*
Encontrar todos os arquivos txt no diretório/pasta/folder TESTE:
find . -type f -name “*.txt”
Encontrar arquivos com permissão 777:
find . -type f -perm 0777 -print
Encontrar arquivos sem permissão 777:
find / -type f ! -perm 777
Localizar todos os arquivos de bit SGID cujas permissões estão definidas para 644:
find / -perm 2644
Encontrar todos os arquivos de conjunto de bits fixos cuja permissão seja 551:
find / -perm 1551
Encontrar todos os arquivos de conjunto SGID:
find / -perm /g=s
Encontrar todos os arquivos executáveis:
find / -perm /a=x
Localizar todos os arquivos de permissão 777 e usar o comando chmod para definir as permissões para 644.
find / -type f -perm 0777 -print -exec chmod 644 {} \;
Encontrar todos os diretórios de permissão 777 e usar o comando chmod para definir as permissões para 755.
find / -type d -perm 777 -print -exec chmod 755 {} \;
Para localizar e remover em TESTE 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 {} \;
Encontrar todos os diretórios vazios:
find /tmp -type d -empty
Encontrar todos os arquivos que pertencem ao usuário eu.
find ~/ -user eu
Para encontrar todos os arquivos que pertencem ao grupo Developer no diretório /home.
find /home -group developer
Encontrar todos os .txt do usuário eu na pasta home:
find /home -user eu -iname “*.txt”
Encontrar todos os arquivos modificados 60 dias atras.
find / -mtime 60
Encontrar os modificados 25 dias atrás.
find / -atime 25
Para encontrar todos os arquivos que foram alterados/movido na última 1 hora.
find / -cmin -60
Arquivos trabalhados na última 1 hora.
find / -amin -60
Encontrar arquivos de 50MB
find / -size 50M
Arquivos entre 50 e 100MB
find / -size +50M -size -100M
Encontrar e deletar arquivos de 100MB (cuidado!).
find / -type f -size +100M -exec rm -f {} \;
Encontrar e deletar mp3 com mais de 10MB! mp3 bom pra eu tem de 3 a 5MB. O resto é perda de espaço no HD. Ora, foi pra isto que o mp3 foi criado poxa! Pequeno.
find / -type f -name *.mp3 -size +10M -exec rm {} \;
—