我知道
if folder "Macintosh HD:Users:me:Desktop:thing" exists then
set f to folder "Macintosh HD:Users:me:Desktop:thing
else
set f to make new folder at "Macintosh HD:Users:me:Desktop" with properties {name: "thing"}
end
和
try
set f to folder "Macintosh HD:Users:me:Desktop:thing
on error
set f to make new folder at "Macintosh HD:Users:me:Desktop" with properties {name: "thing"}
end
有捷径吗?当然,您可以设置变量的路径,但这仍然相当冗长。我不太了解"命令"背后的结构。甚至还真的知道在哪里寻找或寻找更好的方法。这些伪目标导向但真正查询的结构有点莫名其妙。
答案 0 :(得分:2)
使用AppleScript中的文件系统项目非常古怪(Finder上下文与系统事件上下文,HFS路径与POSIX路径)。
我建议:
/
作为根目录和路径分隔符)do shell script
。这是一个基于通用帮助函数的解决方案,它接受POSIX文件夹路径,按需创建文件夹,并将预先存在或刚刚创建的文件夹作为alias
实例返回:
on createAndOrGetFolder(posixPath)
do shell script "mkdir -p " & quoted form of posixPath
return alias (posixPath as POSIX file)
end createAndOrGetFolder
set f to my createAndOrGetFolder(POSIX path of (path to desktop) & "thing")