0

我想做一个Applescript。我想在上面放置一个文件(.app 文件),然后它应该在与放置的文件相同的目录中创建一个名为“Payload”的文件夹。比它应该复制拖放到 Payload 文件夹的文件。现在应该压缩有效负载文件夹。扩展名应该从 .zip 更改为 .ipa。现在应该将 .ipa 文件重命名为已删除文件的文件名。最后它应该删除已创建的文件夹(如果还没有),并且删除的项目也应该被删除。

我怎样才能做到这一点?

非常感谢。

没看懂?请发表评论。:)

4

3 回答 3

1

首先,我假设您正在用一个tell application "Finder"步骤编写 Finder 脚本。如果是这种情况,请查看moveFinder 字典中的命令以移动文件和delete删除文件。

关于压缩,当我需要使用 AppleScript 压缩文件时,我发现使用 shall 命令do shell script和 zip 命令行工具(man zip在终端窗口中键入或查看在线手册页)。

如果您不熟悉move,deletedo shell script,请查看 Finder 的 AppleScript 字典(对于movedelete以及标准脚本添加(对于do shell script)。

于 2011-04-02T02:21:16.410 回答
0

结合查克的回答,您可以使用文件夹操作来完成此操作...

于 2011-07-23T02:36:46.107 回答
0

您可以使用文件夹操作作为答案

首先,创建您的文件夹。

Puis,写这个 AppleScript

on adding folder items to theAttachedFolder after receiving theNewItems
-- Get the name of the attached folder
tell application "Finder"
    set theName to name of theAttachedFolder

    -- Count the new items
    set theCount to length of theNewItems

    -- Display an alert indicating that the new items were received
    activate
    display alert "Attention!" message (theCount & " new items were detected in folder " & (quoted form of theName) & "." as string)

    -- Loop through the newly detected items
    repeat with anItem in theNewItems

        -- Process the current item

        -- Move the current item to another folder so it's not processed again in the future

    end repeat
end tell
end adding folder items to

将文件夹操作添加到文件夹的说明:

观看文件夹说明

或者在 Automator 中,您可以使用此代码添加 AppleScript,您只需从 automator 设置一个变量并将其返回给 AppleScript,用于放置在 targetFolder 中的文件夹。

set theFolder to "Folder_child:Folder_Grandchild:Folder_Great-Grandchild"
set theNewFolder to "Folder_First_Great_Grandchild"

if FolderExists(theFolder) = true then

    --display dialog "Exists " & theFolder & " !"
    --delete the file
else

    --display dialog "Missing " & theFolder & " !"
    -- do nothing or something else
end if

--handler for checking if exists theFolder/thePath

on FolderExists(theFolder) -- (String) as Boolean
    tell application "System Events"
        if exists folder theFolder then
            return true
        else
            return false
        end if
    end tell
end FolderExists

这就是我现在找到的全部。

此致

于 2018-12-31T22:37:06.783 回答