Comando completo:
find /public_html/uploads/ -iname "*.png" -type f -exec du -k {} + | sort -n -r | cut -f2- | xargs -I {} pngquant --ext .png --force --quality 60-80 {}
Percorre o diretório procurando por arquivos:
find /public_html/uploads/
Filtra a pesquisa para encontrar apenas arquivos com a extensão ".png" (considerando maiúsculas e minúsculas):
-iname "*.png"
Limita a busca a arquivos regulares (evitando diretórios):
-type f
Executa o comando du -k para cada arquivo PNG encontrado:
-exec du -k {} +
Exibe o tamanho do arquivo em kilobytes (kB):
du -k
Representa o caminho de cada arquivo PNG encontrado pelo comando find:
{} +
Ordena a lista de resultados numericamente (por tamanho de arquivo) em ordem decrescente (do maior para o menor):
| sort -n -r:
Indica que a ordenação deve ser feita baseada em números:
-n:
Inverte a ordem de classificação (maior para menor):
-r
Separa a lista ordenada, mantendo apenas os nomes dos arquivos e suas extensões (a partir do segundo campo -f2-)
| cut -f2-
Envia a lista de arquivos PNG para o programa pngquant:
xargs -I {} pngquant --ext .png --force --quality 60-80 {}
Passa cada caminho de arquivo como argumento para o comando seguinte, substituindo {} pelo caminho do arquivo:
xargs -I {}
Ferramenta de otimização que reduz o tamanho de arquivos PNG sem perda significativa de qualidade:
pngquant
Indica que os arquivos de saída devem manter a extensão PNG:
--ext .png
Sobreescreve os arquivos PNG originais com as versões otimizadas:
--force
Define a faixa de qualidade de saída para as imagens otimizadas (entre 60% e 80%):
--quality 60-80
Resumindo:
Este comando percorre um diretório específico, encontra todos os arquivos PNG, calcula seus tamanhos, ordena a lista por tamanho decrescente, isola os caminhos dos arquivos e os envia para otimização com o pngquant, reduzindo o tamanho das imagens PNG e potencialmente melhorando o tempo de carregamento do seu site.