如何按顺序循环浏览一个文件夹中的图像并与另一个文件夹中的最新图像进行比较
How to loop sequentially through images in one folder and compare with the latest image in another folder
我正在尝试使用 shell 依次循环浏览一个文件夹中的图像,并与另一个文件夹中的最新图像进行比较。
我遇到的一个错误是 -
zsh: no matches found: /TiffOut/*.tiff(.om[1])
如果这不是唯一的问题,我也不会感到惊讶。
我希望实现的是:
- 遍历当前目录中的所有源图像:
- 将 TiffOut 子目录中的最新文件放入变量 'latest'
- 将当前源和最新输出与“-evaluate-sequence max”进行比较,以创建包含每个 image_file
中最亮部分的新 tiff
- 保存到 TiffOut 子目录
这是我的完整脚本 -
#! /bin/zsh -
filelist=$(ls | grep '.tiff')
for image_file in $filelist
do
latest=$(/TiffOut/*.tiff(.om[1]))
magick $image_file $latest -evaluate-sequence Max '/TiffOut/out_${imagefile}.tiff'
done
感谢阅读
您的脚本存在一些问题 - 试试这个:
#!/bin/zsh
for image_file in *.tiff
do
latest=(./TiffOut/*.tiff(.om[1]))
magick "$image_file" "$latest" -evaluate-sequence Max "./TiffOut/out_${image_file}"
done
一些注意事项:
- 您不需要
grep
来缩小文件列表;只需使用 glob 模式 (*.tiff
).
- 子目录相对于当前目录,即
.
,因此 ./TiffOut/*.tiff
。以 /
开头的路径是绝对路径,从根目录开始。
- 获取最新文件的分配正在使用另一个 glob 模式,带有
.om
glob 限定符。这不是命令,$(...)
表示。只有括号,它是一个数组的赋值,只有一个成员。
- 变量(例如
$something
)仅在用双引号引起来的字符串中扩展,而不是单引号。
- 我对 imagemagick 的了解不够,无法告诉您
magick
命令是否满足您的要求。
您可以使用我的笔记中的术语来查找有关脚本片段的更多信息。
祝你好运!
我正在尝试使用 shell 依次循环浏览一个文件夹中的图像,并与另一个文件夹中的最新图像进行比较。
我遇到的一个错误是 -
zsh: no matches found: /TiffOut/*.tiff(.om[1])
如果这不是唯一的问题,我也不会感到惊讶。
我希望实现的是:
- 遍历当前目录中的所有源图像:
- 将 TiffOut 子目录中的最新文件放入变量 'latest'
- 将当前源和最新输出与“-evaluate-sequence max”进行比较,以创建包含每个 image_file 中最亮部分的新 tiff
- 保存到 TiffOut 子目录
这是我的完整脚本 -
#! /bin/zsh -
filelist=$(ls | grep '.tiff')
for image_file in $filelist
do
latest=$(/TiffOut/*.tiff(.om[1]))
magick $image_file $latest -evaluate-sequence Max '/TiffOut/out_${imagefile}.tiff'
done
感谢阅读
您的脚本存在一些问题 - 试试这个:
#!/bin/zsh
for image_file in *.tiff
do
latest=(./TiffOut/*.tiff(.om[1]))
magick "$image_file" "$latest" -evaluate-sequence Max "./TiffOut/out_${image_file}"
done
一些注意事项:
- 您不需要
grep
来缩小文件列表;只需使用 glob 模式 (*.tiff
). - 子目录相对于当前目录,即
.
,因此./TiffOut/*.tiff
。以/
开头的路径是绝对路径,从根目录开始。 - 获取最新文件的分配正在使用另一个 glob 模式,带有
.om
glob 限定符。这不是命令,$(...)
表示。只有括号,它是一个数组的赋值,只有一个成员。 - 变量(例如
$something
)仅在用双引号引起来的字符串中扩展,而不是单引号。 - 我对 imagemagick 的了解不够,无法告诉您
magick
命令是否满足您的要求。
您可以使用我的笔记中的术语来查找有关脚本片段的更多信息。
祝你好运!