1

我创建了一个小applescript,它在某个文件夹中查找与多个字符串匹配的文件,当找到它们时,它会返回该文件的路径。在 applescript 语言中,它看起来像这样:

将 filesExist 设置为(文件夹 pathUnsorted 中名称以(theWords 的第 1 项)开头并且名称包含(theWords 的第 2 项)并且名称包含(theWords 的第 3 项)并且名称包含(theWords 的第 4 项)和名称的每个文件的路径包含(单词的第 5 项))

现在,我需要将其转换为 shell 命令,因为这些命令可以使用以下命令在 applescript 中运行:

将 filesExist 设置为执行 shell 脚本“(此处为 shell 命令)”

不幸的是,我不知道如何在 shell 命令中执行此操作...有人可以帮助我吗?

4

1 回答 1

1

假设这pathUnsorted已经是一个 POSIX 路径:

do shell script "ls " & quoted form of (pathUnsorted & "/" & (item 1 of theWords)) & "*" & ¬
    " | grep " & quoted form of (item 2 of theWords) & ¬
    " | grep " & quoted form of (item 3 of theWords) & ¬
    " | grep " & quoted form of (item 4 of theWords) & ¬
    " | grep " & quoted form of (item 5 of theWords)

从理论上讲,可以构造一个一次性匹配所有正确文件的正则表达式,但这更简单。

于 2013-04-16T21:09:20.757 回答