Página inicial Linux Como otimizar imagens JPG e PNG em massa pelo terminal usando jpegoptim e OptiPNG

Como otimizar imagens JPG e PNG em massa pelo terminal usando jpegoptim e OptiPNG

Imagens pesadas podem aumentar o espaço utilizado na hospedagem e deixar o carregamento de um site mais lento.

Quando existem muitas imagens, otimizar uma por uma pode ser trabalhoso. Para facilitar esse processo, é possível utilizar comandos no Linux para otimizar centenas ou milhares de imagens de uma só vez.

Neste tutorial, vamos mostrar como utilizar:

  • jpegoptim, para imagens JPG e JPEG
  • OptiPNG, para imagens PNG

Os comandos podem ser executados pelo Terminal do cPanel ou através de um acesso SSH externo, utilizando programas como PuTTY ou Bitvise.

Os exemplos abaixo são baseados no funcionamento das ferramentas jpegoptim e OptiPNG, que permitem otimizar imagens individualmente ou em lote.


⚠️ Aviso importante antes de começar

Este tutorial modifica arquivos diretamente.

Os comandos apresentados podem otimizar imagens em massa e, dependendo dos parâmetros utilizados, substituir os arquivos existentes.

Por isso:

Faça um backup completo antes de executar qualquer comando em uma grande quantidade de imagens.

Também recomendamos que você:

  • Faça backup dos arquivos antes da otimização
  • Teste primeiro em uma ou poucas imagens
  • Confirme se está no diretório correto
  • Tenha conhecimento básico sobre navegação pelo terminal Linux
  • Evite executar comandos em diretórios sem saber exatamente quais arquivos serão encontrados

Um comando executado no diretório errado pode modificar imagens que você não pretendia alterar.

Para sites importantes, a recomendação é realizar um backup e testar os comandos em um ambiente controlado antes de aplicar a otimização em toda a estrutura do site.


O que é o jpegoptim?

O jpegoptim é uma ferramenta de linha de comando utilizada para otimizar imagens nos formatos:

  • JPG
  • JPEG
  • JFIF

Ele pode realizar otimizações sem perda de qualidade e também permite utilizar parâmetros para reduzir ainda mais o tamanho dos arquivos.


O que é o OptiPNG?

O optipng é uma ferramenta de linha de comando utilizada para otimizar imagens no formato PNG.

Ele analisa diferentes métodos de compressão para tentar reduzir o tamanho final do arquivo sem alterar visualmente a imagem.


Onde executar os comandos?

Você pode executar os comandos de duas formas.

Opção 1: Terminal do cPanel

Se sua conta possui acesso ao Terminal do cPanel, basta:

  1. Acessar o cPanel
  2. Procurar por Terminal
  3. Abrir o terminal
  4. Navegar até o diretório onde estão as imagens
  5. Executar os comandos

Essa é uma opção prática para quem possui hospedagem com acesso ao Terminal.


Opção 2: Acesso SSH externo

Também é possível acessar o servidor através de SSH utilizando programas como:

  • PuTTY
  • Bitvise SSH Client
  • Outros clientes SSH

Após realizar a conexão, os comandos funcionam da mesma forma.

O importante é garantir que o usuário SSH tenha permissão para acessar e modificar os arquivos.


Antes de otimizar: navegue até o diretório correto

Antes de executar qualquer comando, navegue até a pasta onde estão as imagens.

Por exemplo:

cd public_html/wp-content/uploads

Para verificar em qual diretório você está:

pwd

Para listar os arquivos:

ls -lah

Antes de continuar, confira cuidadosamente se o diretório exibido é realmente o local que você deseja otimizar.

Conheça em nosso blog os comandos básicos Linux


Como otimizar imagens JPG e JPEG com jpegoptim

Otimizar uma única imagem

Para testar o funcionamento em uma imagem:

jpegoptim imagem.jpg

Também pode ser utilizado com JPEG:

jpegoptim imagem.jpeg

A ferramenta exibirá informações sobre o arquivo e a redução obtida.

Esse é o melhor primeiro teste antes de executar uma otimização em massa.


Otimizar todas as imagens JPG de uma pasta

Se você deseja otimizar todos os arquivos .jpg presentes no diretório atual:

jpegoptim *.jpg

Para imagens .jpeg:

jpegoptim *.jpeg

Caso existam extensões em maiúsculas:

jpegoptim *.JPG

ou:

jpegoptim *.JPEG

A ferramenta pode processar várias imagens de uma única vez.


Otimizar JPG e JPEG em massa, incluindo subdiretórios

Em muitos sites WordPress, por exemplo, as imagens ficam distribuídas em diversas pastas e subpastas.

Para localizar imagens recursivamente, podemos utilizar o comando find.

Exemplo com JPG

find . -type f -iname "*.jpg" -exec jpegoptim --all-progress --strip-all -m85 {} \;

O que esse comando faz?

find .

Procura arquivos a partir do diretório atual.

-type f

Limita a busca apenas a arquivos.

-iname "*.jpg"

Localiza arquivos com extensão .jpg, sem diferenciar letras maiúsculas e minúsculas.

Isso significa que pode localizar, por exemplo:

  • imagem.jpg
  • imagem.JPG
  • IMAGEM.JPG

O restante do comando:

-exec jpegoptim --all-progress --strip-all -m85 {} \;

Executa o jpegoptim para cada arquivo encontrado.


Entendendo os parâmetros do jpegoptim

No exemplo:

jpegoptim --all-progress --strip-all -m85

temos:

--all-progress

Exibe informações sobre o progresso e os arquivos processados.

--strip-all

Remove informações adicionais presentes no arquivo, como determinados metadados.

Isso pode ajudar a reduzir o tamanho da imagem, mas é importante entender que os metadados serão removidos.

Por isso, reforçamos novamente a importância do backup.

-m85

Define uma qualidade máxima de 85.

Esse parâmetro permite compressão com perda e pode reduzir mais o tamanho dos arquivos.

Atenção: ao utilizar -m85, a imagem pode ser recomprimida. Teste primeiro em algumas imagens antes de utilizar esse parâmetro em toda a biblioteca.


Exemplo recomendado para testar primeiro

Antes de processar milhares de imagens, teste com um arquivo:

jpegoptim --all-progress --strip-all -m85 imagem.jpg

Depois abra a imagem e confira o resultado.

Se estiver satisfeito, avance para a otimização em massa.


Como otimizar PNG com OptiPNG

Para otimizar uma única imagem PNG:

optipng imagem.png

A ferramenta exibirá as tentativas de otimização e o tamanho final do arquivo. O OptiPNG pode reduzir o tamanho dos PNG sem perda das informações da imagem.


Otimizar todos os PNG de uma pasta

Se os arquivos estiverem no diretório atual:

optipng *.png

Otimizar PNG em massa, incluindo subdiretórios

Para localizar todos os arquivos PNG a partir do diretório atual:

find . -type f -iname "*.png" -print0 | xargs -I {} -0 optipng -o6 --strip all --preserve "{}"

Esse comando é útil para otimizar uma grande quantidade de arquivos PNG distribuídos em várias subpastas.


Entendendo o comando OptiPNG

Vamos dividir o comando:

find .

Procura arquivos a partir do diretório atual.

-type f

Localiza apenas arquivos.

-iname "*.png"

Procura arquivos PNG sem diferenciar maiúsculas e minúsculas.

-print0

Utiliza um formato seguro para nomes de arquivos que possuem espaços ou caracteres especiais.

Depois:

xargs -I {} -0

Envia os arquivos encontrados para o comando seguinte.

Por fim:

optipng -o6 --strip all --preserve "{}"

executa a otimização.


Entendendo os parâmetros do OptiPNG

-o6

Define um nível maior de otimização.

Quanto maior o nível, maior pode ser o tempo necessário para processar as imagens.

--strip all

Remove informações adicionais que podem estar armazenadas no PNG.

Assim como no jpegoptim, isso pode reduzir o tamanho final, mas também remove metadados.

--preserve

Ajuda a preservar informações relacionadas ao arquivo durante o processamento.


Atenção: quanto maior a biblioteca, maior o tempo necessário

Se seu site possui:

  • 100 imagens, o processo tende a ser rápido
  • 10.000 imagens, pode levar bastante tempo
  • 100.000 imagens, o processamento pode gerar uma carga considerável no servidor

Por isso, em bibliotecas muito grandes, considere executar o processo gradualmente.

Também evite iniciar uma otimização pesada durante períodos de alto tráfego, principalmente em sites movimentados.


Exemplo para WordPress

Uma instalação WordPress normalmente armazena uploads em:

public_html/wp-content/uploads

Você pode navegar até o diretório:

cd ~/public_html/wp-content/uploads

Depois, verificar a localização:

pwd

E listar algumas pastas:

ls -lah

Somente depois de confirmar que está no local correto, execute os comandos de otimização.

Para JPG:

find . -type f -iname "*.jpg" -exec jpegoptim --all-progress --strip-all -m85 {} \;

Para PNG:

find . -type f -iname "*.png" -print0 | xargs -I {} -0 optipng -o6 --strip all --preserve "{}"

Como otimizar JPG e PNG

Se você possui uma biblioteca com os dois formatos, execute os comandos separadamente.

Primeiro JPG:

find . -type f -iname "*.jpg" -exec jpegoptim --all-progress --strip-all -m85 {} \;

Depois PNG:

find . -type f -iname "*.png" -print0 | xargs -I {} -0 optipng -o6 --strip all --preserve "{}"

Isso facilita acompanhar o resultado de cada tipo de arquivo.


Como verificar o espaço utilizado antes e depois

Antes da otimização, você pode verificar o tamanho do diretório:

du -sh .

Anote o resultado.

Após finalizar a otimização:

du -sh .

Compare os valores.

Para verificar arquivos individuais:

ls -lh imagem.jpg

ou:

ls -lh imagem.png

Problemas comuns

O comando jpegoptim não foi encontrado

Se aparecer uma mensagem semelhante a:

jpegoptim: command not found

isso significa que a ferramenta não está disponível no ambiente.

Em hospedagens compartilhadas, normalmente o usuário não possui permissão para instalar pacotes diretamente.

Nesse caso, entre em contato com o suporte da hospedagem e verifique se o jpegoptim pode ser disponibilizado.


O comando optipng não foi encontrado

Da mesma forma:

optipng: command not found

significa que o OptiPNG não está instalado ou não está disponível no ambiente do usuário.

Em uma hospedagem gerenciada, a instalação normalmente precisa ser realizada pelo administrador do servidor.


Permission denied

Se aparecer:

Permission denied

verifique se o usuário possui permissão para modificar os arquivos.

Também confirme se os arquivos pertencem à conta utilizada no acesso SSH ou no Terminal do cPanel.


Conclusão

O jpegoptim e o OptiPNG são ferramentas úteis para otimizar grandes quantidades de imagens diretamente pelo terminal Linux.

Com poucos comandos, é possível processar arquivos JPG e PNG presentes em diversas pastas e subpastas, evitando a necessidade de otimizar cada imagem manualmente.

Entretanto, o principal cuidado é simples:

Não execute comandos de otimização em massa sem backup e sem entender exatamente o diretório e os parâmetros utilizados.

Os comandos podem ser muito úteis, mas também alteram arquivos reais da sua hospedagem.

Por isso, teste primeiro, confirme o resultado e somente depois aplique a otimização em toda a biblioteca.


📌 STOREHOSTING | Hospedagem de Sites

Precisa de uma hospedagem para seu site ou WordPress?

A StoreHosting oferece planos com:

  • ✓ Servidores no Brasil
  • ✓ LiteSpeed
  • ✓ CloudLinux
  • ✓ Armazenamento NVMe
  • ✓ Backup diário
  • ✓ Antivírus
  • ✓ WAF
  • ✓ SSL gratuito
  • ✓ Suporte técnico especializado

Conheça nossos planos de Hospedagem de Sites

Artigos Relacionados

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

  • Categorias

  • StoreHosting
    Privacy Overview

    This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.