Atualmente, você oferece suporte ao processamento de imagens em lote oferecendo a opção de diretório de destino; no entanto, se um usuário deseja otimizar apenas uma única imagem com um nome de arquivo diferente, ele não pode. Acho que ter 2 parâmetros, um para entrada e outro para saída, pode ajudar neste caso e parece razoável ter esse suporte neste otimizador incrível.
A partir da v1.4.0, jpegoptim oferece suporte a stdin / stdout. Então, agora existem algumas maneiras de fazer o que você deseja:
jpegoptim --stdout a.jpg> b.jpg
ou
cat a.jpg | jpegoptim --stdin> b.jpg
Para usar stdin / stdout, você deve usar um shell. O binário em si não é capaz de enviar para outro nome de arquivo, o que, em minha opinião, é um ponto fraco / ausente.
Se alguém está preso a isso, você pode ser um pouco criativo ao fazer isso.
Aqui está um pequeno script bash:
img='test.jpg'
cp $img ${img%.*}-optimized.jpg
jpegoptim ${img%.*}-optimized.jpg
Comentários muito úteis
A partir da v1.4.0, jpegoptim oferece suporte a stdin / stdout. Então, agora existem algumas maneiras de fazer o que você deseja:
jpegoptim --stdout a.jpg> b.jpg
ou
cat a.jpg | jpegoptim --stdin> b.jpg