开始!
- 我有一个包含数十个子文件夹的文件夹,其中包含子文件夹
- 我想调整所有长度大于 800px 的图像的大小,使新长度变为 800px,但图像保持相同的比例。例如,如果图像是 1200x600px,它会将其大小调整为 800x400px
- 然后我希望它是“保存为网络”或至少优化它然后必须覆盖原始文件,因为我使用的是 GIF、JPEG、JPG 和 PNG
这可以一起完成吗,任何部分都可以轻松完成吗?
我在 Mac 上
提前致谢
开始!
这可以一起完成吗,任何部分都可以轻松完成吗?
我在 Mac 上
提前致谢
我会用 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
命令说要调整图像大小,使两边都不超过 800 像素并保留纵横比,然后针对 Web 进行优化并覆盖原始文件。
目前,它什么也不做,它只是向您显示它将运行的命令,因此如果您喜欢它,您需要删除该单词echo
并再次运行它。首先对一个或两个图像运行一些测试。
您可以添加-strip
和删除 EXIF 数据(拍摄日期/时间照片、相机品牌和镜头等)以使文件更小-resize
。-quality
您还可以插入版权字符串和 IPTC 配置文件以提供版权、联系人、来源、对象和信用信息 - 只需问我。
要运行上面的脚本,请将其保存在一个名为 的文件中resizer
,然后进入终端并执行以下操作:
chmod +x resizer # Just do this one time to make the script executable
./resizer # Run the script
要在 Mac 上安装 ImageMagick,请使用homebrew
. 转到此处并使用那里的代码行安装它。然后做:
brew install imagemagick
如果你不喜欢 ImageMagick,你可以使用sips
OSX 内置的,但它远没有那么灵活。如果您想尝试,基本命令将是:
sips -Z 800 somefile.jpg
然后它将图像的大小调整为两侧最大 800 像素。不知道如何优化或去除 EXIF sips
,也不知道它是否适用于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