Created
May 13, 2015 12:42
-
-
Save prcaen/eb039d63f34e76d93656 to your computer and use it in GitHub Desktop.
Revisions
-
prcaen created this gist
May 13, 2015 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,35 @@ #!/bin/bash # Install # This script need a API key from TinyPNG. See this page: https://tinypng.com/developers # It also need jq library, which can be install thanks to: `brew install jq` # Usage # cd to your folder. This script will compress all PNG or JPG files recursively. API_KEY="CHANGE_ME" if [ $API_KEY = "CHANGE_ME" ] then echo "CHANGE THE API_KEY in this file." exit 1 fi if ! type "jq" > /dev/null then echo "Please install `jq`" exit 1 fi find . -type f \( -name \*.jpg -o -name \*.png -o -name \*.jpeg \) -print0 | while IFS= read -r -d '' file; do echo "Compress file: $file" json=$(curl -sS --user api:$API_KEY --data-binary @$file https://api.tinypng.com/shrink) url=$(jq -n "$json.output.url" | sed -e 's/^"//' -e 's/"$//') echo "Compression OK. Old size: $(jq -n "$json.input.size"), new size: $(jq -n "$json.output.size"), ratio: $(jq -n "$json.output.ratio")" echo "Downloading the compressed file…" curl -sS $url > $file echo "Compressed file downloaded with success!" done