我知道convert
从一种图像格式到另一种图像格式的转换。mogrify
也可以调整多幅图像的大小和比例。但是我如何修改目录内的所有图像,包括子目录。例如,将文件夹及其子文件夹中的每一幅图像从一种格式 png 更改为另一种格式 jpg,或者将文件夹及其子文件夹中的所有图片大小调整为所需的大小?
答案1
由于 mogrify 接受以换行符分隔的文件列表,因此您可以执行以下操作:
mogrify -equalize $(find -iname '*.png')
我使用均衡作为示例,但重要的是最后一个。
- 文件名可以是任何打印出文件列表的表达式,我以此
find -iname '*.png'
为例。您可以随意使用该find
命令,直到它给出您想要的文件列表。
重要的是,无论您输入什么命令,$()
都会返回带有正确路径的文件列表。ls -Ra
只会返回文件名。find | grep png
另一方面, 的输出如下所示:
./Webcam/lenovo-maverick-20110101-1.png
./lenovo-maverick-20110101-2.png
./lenovo-maverick-20110101-1.png
其中.
表示“当前工作目录”。