Macos 如何使用OSX';将文件添加到文件夹时,在终端中执行命令的文件夹操作?

Macos 如何使用OSX';将文件添加到文件夹时,在终端中执行命令的文件夹操作?,macos,terminal,applescript,directory,Macos,Terminal,Applescript,Directory,将文件添加到文件夹时,如何使用OSX的文件夹操作在终端中执行命令?我的理解是,文件夹操作可以在文件放置在其中时触发AppleScripts。我试图修改“添加到文件夹”脚本示例,但它不起作用 这正是我希望在文件夹中的任何zip文件上运行的终端命令(我知道这种语法是正确的): 我在脚本编辑器(2.10版)中尝试了这段代码,但语法不正确: on adding folder items to theAttachedFolder after receiving theNewItems tell a

将文件添加到文件夹时,如何使用OSX的文件夹操作在终端中执行命令?我的理解是,文件夹操作可以在文件放置在其中时触发AppleScripts。我试图修改“添加到文件夹”脚本示例,但它不起作用

这正是我希望在文件夹中的任何zip文件上运行的终端命令(我知道这种语法是正确的):

我在脚本编辑器(2.10版)中尝试了这段代码,但语法不正确:

on adding folder items to theAttachedFolder after receiving theNewItems
    tell application Terminal
        for file in *.zip; do zip -d "$file" "__MACOSX*"; done; for file in *.zip; do zip -d "$file" "*.DS_Store"; done; unzip -l \*.zip 
    end tell
end adding folder items to
以下是脚本编辑器中脚本的外观(如果有帮助):

正确的语法是什么?我正在运行OSX 10.13.6


附言:我已经看到了另外几个类似的问题,但我太新了,无法将动作和应用程序描述放入文件夹,无法理解如何让它们在我的情况下工作

您需要使用以下语法:

set currentTab to do script ("[command]")
例如:

tell application "Terminal"
    set currentTab to do script ("ls")
end tell

将列出当前目录。请确保还将Terminal用引号括起来:“Terminal”

实际上,这对“ls”有效,但对于我想要使用的长命令字符串,它不起作用。在第一个$1,它说“语法错误:预期”,“但发现未知标记”。还有,我可以看看语法手册吗?我要用谷歌搜索什么才能找到它?到目前为止,我找不到任何东西。与其尝试使用Terminal,不如在Applescript中使用“do shell script”指令。它直接从AS运行shell命令。因为您的文件夹似乎总是相同的,所以可以将此文件夹路径硬编码到shell命令中。当前,zip命令未指定包含.zip的文件夹。请记住,AS,then'doshell脚本'不知道默认文件夹是什么意思。
tell application "Terminal"
    set currentTab to do script ("ls")
end tell