]>
Commit | Line | Data |
---|---|---|
7fa03a9c MF |
1 | #!/bin/bash |
2 | ||
3 | usage() { | |
4 | cat <<EOF | |
5 | Usage: imgcrush [options] <files> | |
6 | EOF | |
7 | exit ${1:-0} | |
8 | } | |
9 | ||
10 | crush_jpg() { | |
11 | jpegoptim "$1" | |
12 | } | |
13 | ||
14 | crush_png() { | |
15 | # apngopt likes to corrupt images. | |
16 | pngcrush -e .png.new "$1" | |
17 | mv "${png}.new" "${png}" | |
18 | } | |
19 | ||
20 | crush() { | |
21 | case $1 in | |
22 | *.jpg|*.jpeg) crush_jpg "$1" ;; | |
23 | *.png) crush_png "$1" ;; | |
24 | esac | |
25 | } | |
26 | ||
27 | main() { | |
28 | set -e | |
29 | ||
30 | while [[ $# -ne 0 ]] ; do | |
31 | case $1 in | |
32 | -h) usage ;; | |
33 | -*) usage 1 ;; | |
34 | *) crush "$1" ;; | |
35 | esac | |
36 | done | |
37 | } | |
38 | main "$@" |