Mac 终端:循环和 ImageMagick

Mac Terminal: Looping & ImageMagick

我有几个文件夹,里面有图片,类似这样的结构:

parent-folder
   01
   02
   03

我想使用 ImageMagick 转换它们。我可以轻松做到这一点:

cd parent-folder/01
convert *.jpg output.pdf

效果很好,但我有 90 多个文件夹 -- 这非常耗时。

有没有办法遍历每个文件夹,将 imagemagick 命令应用于每个文件夹?

我开始是这样处理的:

cd parent-folder
for d in *; 
do convert *.jpg output.pdf; 
done

但我没有运气。我知道上面的代码不起作用,因为我仍在父文件夹中。有什么想法是解决这个问题的最佳方法吗?我也对其他解决方案持开放态度。

谢谢!

我使用 bash find 命令在我的 Mac 桌面上名为 testing 的文件夹中查找所有一级目录,以下对我有用。然后遍历每一个。文件夹结构为:

testing
    test1
        lena.jpg
        mandril3.jpg
        zelda1.jpg
    test2
        lena.jpg
        mandril3.jpg
        zelda1.jpg


这是代码:

cd desktop
for folder in `find "testing" -type d -mindepth 1 -maxdepth 1`; do
echo "$folder"
convert ${folder}/*.jpg ${folder}/output.pdf
done

testing/test1
testing/test2


生成的文件夹结构现在在每个文件夹结构中显示 output.pdf。

testing
    test1
        lena.jpg
        mandril3.jpg
        output.pdf
        zelda1.jpg
    test2
        lena.jpg
        mandril3.jpg
        output.pdf
        zelda1.jpg