Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@ryansully
Forked from realdeprez/optimize.sh
Created February 1, 2012 23:56
Show Gist options
  • Star 22 You must be signed in to star a gist
  • Fork 11 You must be signed in to fork a gist
  • Save ryansully/1720244 to your computer and use it in GitHub Desktop.
Save ryansully/1720244 to your computer and use it in GitHub Desktop.
image optimization script (pngcrush & jpegtran)
#!/bin/sh
# script for optimizing images in a directory (recursive)
# pngcrush & jpegtran settings from:
# http://developer.yahoo.com/performance/rules.html#opt_images
# pngcrush
for png in `find $1 -iname "*.png"`; do
echo "crushing $png ..."
pngcrush -rem alla -reduce -brute "$png" temp.png
# preserve original on error
if [ $? = 0 ]; then
mv -f temp.png $png
else
rm temp.png
fi
done
# jpegtran
for jpg in `find $1 -iname "*.jpg"`; do
echo "crushing $jpg ..."
jpegtran -copy none -optimize -perfect "$jpg" > temp.jpg
# preserve original on error
if [ $? = 0 ]; then
mv -f temp.jpg $jpg
else
rm temp.jpg
fi
done
@rauldelperal
Copy link

Muchas gracias! Vamos a probar!!

@petrabarus
Copy link

nice one! thanks!

@uaimax
Copy link

uaimax commented Mar 12, 2014

Excellent. thank you!

@vikaslaxmi
Copy link

How can we use these functions for our website, that is hosted on Linux with PHP coding using my Sql.

@tedivm
Copy link

tedivm commented Jun 9, 2017

Add this to the top to make it work with files that have spaces in them.

IFS=$'\n'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment