Tags 使用AppleScript根据颜色标记将文件移动到不同位置

Tags 使用AppleScript根据颜色标记将文件移动到不同位置,tags,applescript,metadata,Tags,Applescript,Metadata,我对AppleScript有点陌生。我想开始将finder中标记为“绿色”的文件移动到其他位置。这将是一开始 理想情况下,我使用的是“Capture One”程序,在该程序中,您可以将图像标记为绿色,并将其存储为元数据。我想写一个AppleScript来扫描图像文件夹中任何带有元数据标记“绿色”的图像,并将这些图像移动到服务器上的另一个位置。我想让脚本每小时扫描一次文件夹 我四处搜索了很多,发现很难弄清楚如何处理这个过程 感谢您的时间和帮助 免责声明:这是“无applescript”的答案。我在

我对AppleScript有点陌生。我想开始将finder中标记为“绿色”的文件移动到其他位置。这将是一开始

理想情况下,我使用的是“Capture One”程序,在该程序中,您可以将图像标记为绿色,并将其存储为元数据。我想写一个AppleScript来扫描图像文件夹中任何带有元数据标记“绿色”的图像,并将这些图像移动到服务器上的另一个位置。我想让脚本每小时扫描一次文件夹

我四处搜索了很多,发现很难弄清楚如何处理这个过程

感谢您的时间和帮助

免责声明:这是“无applescript”的答案。我在评论中问道 若applescript是一个要求,那个么答案是否定的,所以我探索了一下 非applescript解决方案。我想象一个合适的基于applescript的 解决方案仍然是受欢迎的

您可以创建一个shell脚本来执行此操作:

#!/bin/sh
SOURCE_FOLDER="/path/to/source/folder"
TARGET_FOLDER="/path/to/target/folder"
find "$SOURCE_FOLDER" -type f | while read file
do
    mdls -name kMDItemUserTags "$file" | grep Green && mv "$file" "$TARGET_FOLDER"
done
请务必每小时安排一次

编辑:我早就忘记了如何编写Applescript,但对于一个没有代码的可双击应用程序,您可以尝试使用“Automator”:

  • 新建->应用程序
  • 从库中选择“文件和文件夹”
  • 选择“Find Finder Items”并将其拖动到您的工作流中
  • 选择“移动查找器项目”并将其拖动到您的工作流中

(虽然这适用于具有绿色标记且没有其他标记的文件,但您可以指定更复杂的规则)

免责声明:这是“无applescript”的答案。我在评论中问道 若applescript是一个要求,那个么答案是否定的,所以我探索了一下 非applescript解决方案。我想象一个合适的基于applescript的 解决方案仍然是受欢迎的

您可以创建一个shell脚本来执行此操作:

#!/bin/sh
SOURCE_FOLDER="/path/to/source/folder"
TARGET_FOLDER="/path/to/target/folder"
find "$SOURCE_FOLDER" -type f | while read file
do
    mdls -name kMDItemUserTags "$file" | grep Green && mv "$file" "$TARGET_FOLDER"
done
请务必每小时安排一次

编辑:我早就忘记了如何编写Applescript,但对于一个没有代码的可双击应用程序,您可以尝试使用“Automator”:

  • 新建->应用程序
  • 从库中选择“文件和文件夹”
  • 选择“Find Finder Items”并将其拖动到您的工作流中
  • 选择“移动查找器项目”并将其拖动到您的工作流中


(虽然这适用于具有绿色标记且没有其他标记的文件,但您可以指定更复杂的规则)

您是仅限于applescript,还是可以使用bash?通过一个shell脚本,您可以做到这一点:
mdls-name kMDItemUserTags“$file”| grep Green&&mv“$file”$new\u location”
很酷,谢谢,我会试试的。我并不局限于applescript,我只是认为在尝试与Capture One程序通信时,这将是最好的。好的,因为这是一种合适的方法,我创建了一个答案,它将对其他看到这一点的人更有用。我认为您不需要与Capture One进行通信:该程序可以帮助您标记文件,您可以使用一个完全独立的程序(脚本)来检查标记的文件,并对文件执行任何操作。您是仅限于applescript,还是可以使用bash?通过一个shell脚本,您可以做到这一点:
mdls-name kMDItemUserTags“$file”| grep Green&&mv“$file”$new\u location”
很酷,谢谢,我会试试的。我并不局限于applescript,我只是认为在尝试与Capture One程序通信时,这将是最好的。好的,因为这是一种合适的方法,我创建了一个答案,它将对其他看到这一点的人更有用。我认为您不需要与Capture One通信:该程序可以帮助您标记文件,您可以使用一个完全独立的程序(脚本)来检查标记的文件,并对文件执行任何操作。太棒了,谢谢您的帮助!只是出于好奇,难道不可能通过applescript在finder中定位带颜色标记的文件吗?太棒了,谢谢你的帮助!只是出于好奇,难道不可能通过applescript在finder中定位带颜色标记的文件吗?