我尝试使用ImageMagik水平翻转特定文件夹中的图像。但是mogrify -flop *jpg
正在改变镜像中的所有图像。我想保留初始图像,对于失败的图像,我想将它们重命名为*_flop.jpg
。我被卡住了:怎么办?
答案 0 :(得分:2)
假设您使用的是Linux或OSX,请执行以下操作:
#!/bin/bash
for f in *.jpg; do
new="${f%%.jpg}_flop.jpg"
echo convert "$f" -flop "$new"
done
此刻,它什么也没做,只是告诉你它会做什么。如果你喜欢它显示的内容,只需删除单词echo
并再次运行它。
将上面的代码保存为flopper
,然后转到终端并输入:
chmod +x flopper # Just do this one time to make the script executable (runnable)
./flopper # Actually run it
答案 1 :(得分:1)
更新:
对于较新版本的ImageMagick(版本7及更高版本),您无需编写:
convert -flop
相反,您需要编写:
magick -flop
因此,您的脚本实际上变成了:
#!/bin/bash/
for file in *.jpg
do
magick $file -flop ${file%%.jpg}_flop.jpg
done
注意:当您的文件名中没有空格或换行符时,此功能才有效。