ImageMagick:如何在bash脚本中比较不同文件夹中的图像

jac*_*lay 1 bash imagemagick

我有三个文件夹,名为-folder1、folder2 和difference。我需要比较文件夹“folder1”和“folder2”中的图像,并将比较后的图像保存在“difference”文件夹中,名称例如 diff_namefile1。我在“folder1”中有很多文件。“folder1”和“folder2”中的所有文件都具有相同的名称。我写了脚本,但不幸的是它起作用了。

#!/bin/bash
FILES1=/Users/user/screenshots/folder1/*png
FILES2=/Users/user/screenshots/folder2/*png

for f in $FILES1
do
  echo "Processing $f file..."
  compare $FILES1 $FILES2 $f-"diff.png"
done
Run Code Online (Sandbox Code Playgroud)

Mar*_*ell 5

你已经很接近了!像这样的东西:

#!/bin/bash

folder1=/Users/Mark/tmp/1
folder2=/Users/Mark/tmp/2
differences=/Users/Mark/tmp/diff

cd "$folder1"
shopt -s nullglob
for f in *.png *.jpg *.gif; do
  file1="$f"
  file2="$folder2/$f" 
  result="$differences/$f-diff.png"
  echo "Comparing $file1 with $file2 => $result"
  compare "$file1" "$file2" "$result"
done
Run Code Online (Sandbox Code Playgroud)