我想制作一个Applescript。我想删除它上面的文件(.app文件),而不是应该在与删除的文件相同的目录中创建一个名为“Payload”的文件夹。它应该将已删除的文件复制到Payload文件夹。现在应该压缩Payload文件夹。应该将扩展名从.zip更改为.ipa。现在,.ipa文件应重命名为droppped文件所具有的文件名。最后它应删除已创建的文件夹(如果尚未删除),也应删除已删除的项目。
我该怎么做?
非常感谢。
不明白吗?请发表评论。 :)
答案 0 :(得分:1)
首先,我假设您使用tell application "Finder"
步骤为Finder编写脚本。如果是这种情况,请查看Finder字典中的move
命令以移动文件,并delete
删除文件。
关于压缩,当我需要使用AppleScript压缩文件时,我发现使用带有do shell script
的命令和zip命令行工具(在终端窗口中输入man zip
)或者看看the online man page)。
如果您不熟悉move
,delete
和do shell script
,请查看适用于Finder的AppleScript字典(适用于move
和delete
以及标准脚本添加(适用于do shell script
)。
答案 1 :(得分:0)
结合Chuck的回答,你可以用Folder Actions来完成这个......
答案 2 :(得分: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,您只需要为放置在targetFolder中的文件夹从automator中设置一个变量并将其返回给AppleScript。
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
这就是我现在找到的全部。
最诚挚的问候