到此为止!
这可以一起完成,任何部分都可以轻松完成吗?
我在Mac上
提前致谢
答案 0 :(得分:1)
我会用ImageMagick来做。命令是这样的,但我先创建一个备份:
#!/bin/bash
find . -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.gif" -o -iname "*.png" | \
while read i; do
echo convert "$i" -resize 800x800 -quality 85% "$i"
done
那说......从dot
开始(当前目录,如果你愿意,你可以在这里添加一个不同的起始目录),找到所有名为" .JPG"或" .JPEG"或" .GIF"或者" .PNG",无论大写还是小写,在此目录和下面的所有目录中,并将其名称传递给while循环。 convert
命令用于调整图像大小,使得任何一方都不超过800px并保留纵横比,然后针对Web进行优化并覆盖原始文件。
目前,它什么也没做,它只是向您显示它将运行的命令,因此您需要删除单词echo
并在需要时再次运行它。首先对单个图像或两个图像运行一些测试。
您可以在-strip
和-resize
之间添加-quality
以删除EXIF数据(拍摄日期/时间照片,相机制作和镜头等)以使文件更小。您还可以插入版权字符串和IPTC配置文件,以提供版权,联系方式,来源,对象和信用信息 - 只需询问我。
要运行上面的脚本,请将其保存在名为resizer
的文件中,然后进入终端并执行此操作:
chmod +x resizer # Just do this one time to make the script executable
./resizer # Run the script
要在Mac上安装ImageMagick,请使用homebrew
。转到here并使用其中的代码行安装它。然后做:
brew install imagemagick
如果您不喜欢ImageMagick,您可以使用内置于OSX中的sips
,但它远非灵活。如果你想尝试,基本命令是:
sips -Z 800 somefile.jpg
然后它会将图像的大小调整为最大800px。不确定如何在sips
中优化或删除EXIF,也不确定它是否适用于PNG
和GIF
文件......您的命令将变为:
#!/bin/bash
find . -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.gif" -o -iname "*.png" | \
while read i; do
echo sips -Z 800 "$i"
done