回答:
すべて1行で:
for file in *.png; do pngcrush "$file" "${file%.png}-crushed.png" && mv "${file%.png}-crushed.png" "$file"; done
それを行う必要があります。
(これまでのところ、私自身のテストでは、テストpngcrush
したpngの半分未満がその後小さくなったので、感銘を受けないように色付けしました。)
バージョン1.7.22以降pngcrush
、上書きオプションがあります。
試してみる
pngcrush -ow file.png
詳細については、変更ログを参照してください。
Version 1.7.22 (built with libpng-1.5.6 and zlib-1.2.5)
Added "-ow" (overwrite) option. The input file is overwritten and the
output file is just used temporarily and removed after it is copied
over the input file.. If you do not specify an output file, "pngout.png"
is used as the temporary file. Caution: the temporary file must be on
the same filesystem as the input file. Contributed by a group of students
of the University of Paris who were taking the "Understanding of Programs"
course and wished to gain familiarity with an open-source program.