Find
Origem: Wikipédia, a enciclopédia livre.
Remova este aviso somente depois de todo o texto estar wikificado.
Sinta-se livre para editá-la para que esta possa atingir um nível de qualidade superior.
Busca arquivos criados a menos de 3 minutos -cmin -3 e tipo txt
find ~/ \( -cmin -3 -a -iname *.txt \)
Busca arquivos maiores que 500M
find ~/ -size +500M
Busca arquivos do tipo pdf (iname ignora maiúsculas)
find ~/ -iname *.pdf
Contar quantos txt há em minha pasta pessoal "~/" (combinando com o comando wc)
find ~/ -iname *.txt | wc -l
Mostra todos os arquivos pdf que não sejam maiores que 2000 bytes tudo que estiver após a exclamação será negado.
find ~/ -iname *.pdf ! -size +2000
Procurar por arquivos de um usuário especifico
find / -user sergio find . -user root
Busca com opções. No caso arquivos html ou htm
find ~/ \( -name *.htm -o -name *.html \) -atime +5 find ~/ -iregex '.*html?' -atime +5
Procurando por uma lista de arquivos e apagando
find ~/.Trash -iname *.txt | xargs rm -rf
usar o xargs ao invés de
-exec rm -rf {} \;
gera um ganho de desempenho
[editar] Usando printf
O argumento -printf pode receber vários parâmetros
find ~/ -iname \*.txt -printf %f\\n "\\n faz quebra de linha" These are used the most: %p imprime o nome do arquivo com o caminho %m permissions of file, displayed in octal. %f imprime o nome do arquivo sem o caminho %g name of the group the file belongs to. %G gid %U uid %h display name of directory file is in, filename isn't included. %u username of the owner of the file %c imrprime -ctime %a tempo de acesso %m imprime modo de permissão
-printf "%f %u %g %m %Ax %AX\\n" veja detalhes abaixo
%f nome sem o caminho %u usuário %g grupo %m modo de permissão %Ax dada de acesso no modo dd/mm/aa %AX hora de acesso do tipo 18:15:23 \\n quebra de linha
Exibe nome "%f" usuário "%u" permissão octal "%m"
find ~/ -iname *.txt -printf "%f %u %m \\n"
[editar] Usando Expressões regulares
find . -regex './ch0[1-2]_0[1-3].*' ./ch01_01.html ./ch01_02.html ./ch02_01.html ./ch02_02.html ./ch02_03.html
Procura todos os arquivos .conf que contenham número IP
find /etc -name *.conf | xargs grep -Hn '[0-9][0-9]*[.][0-9][0-9]*[.][0-9][0-9]*[.][0-9][0-9]*'
[editar] Referências
- http://sergioaraujo.pbwiki.com
- http://www.zago.eti.br/find.html
- http://www.tldp.org/LDP/abs/html/index.html
- http://www.absoluta.org/
- http://www.linux.ie/newusers/beginners-linux-guide/find.php
- http://www.oreilly.de/catalog/unixcd/chapter/c02_077.htm
- http://www.mattwalsh.com/twiki/bin/view/Main/UsingTheFindCommand
- manual do find "man find"