我有一个 phpbb 论坛,其中有大约 40 GB 的图像,我想将它们全部删除。主要问题是所有图像都位于图像没有扩展名的文件夹中,它们是 jpeg、png 和 gif。
我已经安装了 optipng、jpegtran、pngquant、pngcrush、imagick 等,但我无法批量优化文件,因为它说文件名无效。
我正在使用的脚本对于任何其他带有扩展名的“正常”图像都可以正常工作是这样的:
#!/bin/sh
# pngcrush
for png in `find . | grep .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 . | grep .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
图像示例:
10028_0a41aaddab65adcbcdcce682bc733dae 14206_159fab7918af92e498d9616a65852246
正如我之前告诉过你的,我不知道这些图像是 jpeg 还是 png;此示例中的图像分别有 22 mb 和 16 mb。
我期待着您的回音。