在shell脚本中编写两个图像

时间:2011-11-01 21:19:47

标签: shell ubuntu imagemagick

你好朋友我试图在imagemagick shell脚本中编写两个图像commane但在这里遇到一些问题。 我的问题是我有两个文件夹。在第一个文件夹中,将其称为A,第二个文件夹将其称为B.在A和B文件夹中,有一些具有相同名称的图像,就像在文件夹A中一样,有一个名为“a”的图像和相同的命名文件夹在B文件夹中。现在我想让它们用这个命令构成

composite -compose over -geometry +125+25 -background white
a.png a.png output.png

在此命令中,名为'a.png'的文件夹中的图像将由B文件夹'b.png'组成,输出将为'output.png'。现在我可以逐个手动执行此操作在终端中运行命令。我想要这个用于编写大量文件的shell脚本。任何帮助和建议都会非常值得注意。

1 个答案:

答案 0 :(得分:1)

我会假设你的意思

composite -compose over -geometry +125+25 -background white A/a.png B/a.png output.png

并且您希望将结果放入名为out的目录。

如下:

for afile in A/* ; do
  base=$(basename "$afile")
  composite -compose over -geometry +125+25 -background white "A/$base" "B/$base" "out/$base"
done

此处使用的两个基本功能是command substitutionbasename命令,它只返回路径的文件名部分。