Encontre arquivos no Linux com … encontre

Find é uma ferramenta de linha de comando muito útil para localizar alguns arquivos e executar comandos. Aqui estão alguns exemplos de uso que devem ajudá-lo a começar com o que deseja alcançar.

Você sabe o que este faz:

find . -name "*.txt"

Encontre arquivos editados em menos de 10 minutos:

find / -mmin -10

Entre 24 e 48h:

find . -mtime 1 

Mais de 48h:

find . -mtime +1

 Menos de 48h:

find . -mtime -1

Use o atime por dias.

 Você pode usar vários critérios:

E: critério1 -a critério2
OU: (critério1 -o critério2)
NÃO:! Critérios

Exemplo:

find .   ( -name a.out -o -name " *.c "   ) -print

E até mesmo usar regexp:

Exclua todas as imagens como image-123×123.jpg

find . -iregex "(.*)[-][0-9]+x[0-9]+.(jpg|png)" -exec rm -v {} ;

Para redimensionar algumas imagens (como imagens wordpress)

find . -iregex ".*.jpg" -not -iregex "(.*)[-][0-9]+x[0-9]+.jpg" -exec bash -c '[ -f ${1//.jpg}-110x110.jpg ] || { convert $1 -resize 110x110^ -gravity center -crop 110x110+0+0 $1-110x110.jpg ; rename "s/.jpg-110x110/-110x110/i" $1-110x110.jpg ; } ' - {} ;

 Redimensione para um tamanho maior que não exceda 630 px (use ImageMagick)

find . -iregex "(.*)[-][0-9]+x[0-9]+.(jpg|png)" -exec convert -resize 630x> {} {} ;