Mac 将目录复制到在另一个目录中创建的任何目录

Mac Copy directory to any directory created in another directory

所以我有一个用户可以将文件夹复制到的目录。我想设置一种自动将预定义目录复制到添加到原始根文件夹的任何文件夹的方法。

解释一下我的意思:

我有一个根文件夹 /Root。用户可以将他们喜欢的任何文件夹复制到 /Root。当他们这样做时,我想自动将 /Addins/Images 文件夹复制到 /Root/<user created folder>/ 目录中。结果应为 /Root/<user created folder>/Images - 包括 /Addins/Images 文件夹中的所有子目录和文件。

我听说 automator 可以做这样的事情,但不知道如何使用它。 Any/all 帮助表示赞赏。

您可以使用 Automator 或 Applescript 执行此操作,使用操作文件夹。

下面的 Applescript 将文件夹 Images(位于 Addins 中)复制到添加到 MyRoot 文件夹的任何新文件夹中。

on adding folder items to myRoot after receiving FileList
set Addins to POSIX path of "Users:your_path:Addins:Images"
set Folderkind to "folder" -- value depends of your system language
tell application "Finder" -- loop on each item aded into the folder
repeat with one_Item in FileList
    if (kind of one_Item) is Folderkind then -- user has added a folder
        do shell script "cp -R " & (quoted form of Addins) & " " & quoted form of (POSIX path of one_Item)
    end if
end repeat -- end loop on each added item
end tell
end adding folder items to

您必须更改文件夹的路径 Addins/Images(第 2 行)。

在 Applescript 编辑器中编译后,将此脚本保存在 ~library/Scripts/Folder 动作脚本中。 然后,在 Finder 中,select 您的文件夹“/root”并右键单击以在其上添加文件夹操作(此文件夹操作!)。 然后,每次在这个文件夹中添加一个文件夹,脚本会运行。(因为"if"第6行,添加文件夹时只会运行,不是简单的文件)

警告:我担心您正在使用的 /root 文件夹,我希望它不是真正的根文件夹,而只是一个示例。否则,您将遇到真实根文件夹的授权问题。