我有一个包含项目的主目录。每个项目都是一个文件夹,如 myfolder/projectname。每个项目都有一个名为 var 的目录和另一个名为 cache 的目录,例如 myfolder/projectname/var/cache。我想在 Apple 脚本中准备一个脚本,以通过 myfolder 文件夹递归运行 Finder,在那里找到所有类似于 var/cache 的项目文件夹,然后从中删除所有文件文件夹。例如:
myfolder/projectname1/var/cache
myfolder/projectname2/var/cache
myfolder/projectname3/var/cache
如何实现?现在我有一个这样的代码但不起作用
try
tell application "Finder"
delete (every item of folder ("/Users/myuser/myfolder") whose name is "cache")
end tell
on error
display dialog ("Error. Couldn't Move the File") buttons {"OK"}
end try
答案 0 :(得分:2)
这可以通过 shell 更简单、更高效地完成。
*
是通配符,第一个考虑 myfolder
中的所有文件夹,第二个考虑 cache
中的所有项目。如果quoted form
的真实姓名包含空格字符,则需要myfolder
。
set baseFolder to POSIX path of (path to home folder) & "myfolder/"
do shell script "rm " & quoted form of baseFolder & "*/var/cache/*"