Question

I want to optimize the whole test folder with jpg images from a command line. I found this but it doesn't work:

cd /home/site/html/update/test/
find . -exec jpegtran -optimize "{}" "{}.opti.jpg" "{}" \;

I want to overwrite the existing images.

Suggestions?

Answer:

find /img/path -name "*.jpg" -type f -exec jpegtran -copy none -optimize -outfile {} {} \; 
Was it helpful?

Solution

Answer:

find /img/path -name "*.jpg" -type f -exec jpegtran -copy none -optimize -outfile {} {} \;

OTHER TIPS

Though it is solved here pretty earlier but talking about Python approach:

import subprocess
for image_name in arr:
    subprocess.call(["jpegtran", "-your", "-instructions"])

Let's say your instruction is something like:

jpegtran -optimize -progressive -scans script_new.txt -outfile progressive.jpg original.jpg

So your instruction will be like:

subprocess.call(["jpegtran", "-optimize", "-progressive", "-scans", f"{scan_name}.txt", "-outfile", name_progressive, name_original])

For your convenience, name_progressive, name_original and scan_name are variables and concept f-string is used.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top