我使用automator创建了一个简单的服务,它采用* .tiff,从中创建* .jpg并删除原始服务。
但是,我在* .tiff文件上运行它,它继续运行,这意味着它一遍又一遍地转换(然后jpg)文件。也就是说,我相信它确实如此,因为文件消失并且每分钟重新出现约2次并且时间戳改变。我怎么告诉它只运行一次服务(即shell命令)?
Automator中的服务只是“运行Shell脚本”类型的一个操作。 Shell脚本是
newName=${@%.tiff}.jpg
echo "$newName"
sips -s format jpeg "$@" --out "${newName}"
rm "$@"
谢谢! (会发布Automator窗口的图片,但不允许)
答案 0 :(得分:0)
此行为似乎是文件夹操作
如果您创建了文件夹操作:
1-您必须过滤该文件夹的TIFF文件操作不处理创建的JPEG文件
2-如果您删除该文件夹中的一个或多个文件,则必须使用循环
3-仅当sips命令成功完成时,使用“&& ”删除TIFF文件。
这是脚本:
for f in "$@";do
if [[ "$f" = *.tiff ]]; then
sips -s format jpeg "$f" --out "${f%.tiff}.jpg" && rm "$f"
fi
done