我确信这很简单,也很简单,但我是一个完整的AppleScript noob。 该脚本必须:
在item
kind
{文件扩展名 不足<{1}}的每个AppleWorks document
搜索卷,就像在OS X AppleWorks文档之前一样嵌入媒体是有效的包,而不是文件。)
记录每个文档的路径和文件名(不带扩展名)以供日后使用。
将每个文档复制到另一个卷。
以各种非编程方式手动更新每个文档,不要问,我真的必须这样做。
使用原始文件名(尽管是扩展名)和原始路径,将每个原始文件替换为其自身的更新版本(现在可能是iWork格式)。
我开始时:
tell application "Finder" to get the path of every item in startup disk
但我立刻得到了:
error "Finder got an error: Can’t get directory of startup disk." number -1728 from directory of startup disk
我在一些编程语言中相当精明,但我对AppleScript几乎一无所知。甚至一些关于如何收集信息的基本指示(即,我应该使用path
还是directory
?)关于items
等等,我们将不胜感激。我老板的电脑上有几千个近乎随机发布的文件需要管理!
答案 0 :(得分:3)
为了帮助您入门,让我解释一下如何找到可以使用的命令。每个应用程序都有一个Applecript术语和用法的“字典”。每个应用程序都不同,因此您必须查看字典才能找到正确的术语。所以从Finder开始吧。打开AppleScript编辑器,在文件菜单下,您将看到“打开字典”。选择该选项,将打开一个对话框,其中包含所有应用程序的列表。找到Finder并打开它。您可以浏览字典但您已经知道一些术语,因此请尝试搜索字段。尝试搜索“项目”。您可能会得到很多“项目”结果的列表,但您想要查找其类型为“类”的结果。单击它,您将看到类文件,并显示其属性。这些是你可以搜索的东西。
请注意,您不需要获取路径,因为只获取项目是其路径。您会看到有一个“kind”属性和一个“name extension”属性,它们可以帮助您找到您正在寻找的特定文档类型。
通常情况下,当您获得某些物品时,您只能获得顶级物品。您不会获得子文件夹中的项目。要搜索子文件夹,您需要使用命令“whole contents”(您也可以在字典中找到)。
最后提示,有很多类型的“项目”。您可以通过关注您正在寻找的特定类型的项目(您也可以在字典中找到不同类型的项目)来缩小搜索范围。您想要一个“文档文件”类型。
所有这些,这就是我要做的就是找到所有的appleworks文件。首先,您需要弄清楚appleworks文件的“kind”属性,以便您可以在脚本中使用它。运行此选项,选择一个appleworks文件,然后查看结果。您将获得属性的记录。查看“kind”值并在第二个脚本中使用它......
set a to choose file
tell application "Finder" to return properties of a
现在把你的价值放在这个脚本中...它可能与“AppleWorks”不同......
tell application "Finder"
set theAppleworksDocs to document files in entire contents of startup disk whose kind is "AppleWorks"
end tell
这将返回一个文件列表给你。由于它是一个列表,您可以在列表上使用重复循环并查询每个列表项的名称并将它们复制到另一个磁盘。请注意,这可能需要很长时间,因为它会搜索整个硬盘。
有一种更快的方法。您可以使用unix实用程序“mdfind”从applescript执行聚光灯搜索。但要做到这一点,你必须知道你想要找到的文件的kmdItemContentType和一堆其他东西...所以现在坚持使用Finder。无论如何,当你做其他工作时,你都需要Finder。
祝你好运!