Applescript 创建隐藏目录并传输文件
Applescript creating hidden directory and transferring files
我想知道为什么我的这个脚本不正确。 (注意:我是 AppleScript 的新手,所以请忽略它有多糟糕。:P)
set public to "~/Public/"
set p to POSIX path of public
tell application "Finder"
make new folder at p with properties {name:".folder"}
end tell
set sfolder to POSIX path of ((path to me as text) & "::")
set tfolder to "~/Public/.folder/"
duplicate files of sfolder to tfolder
它说
有错误
make new folder at p with properties {name:".folder"}
错误"Finder got an error: AppleEvent handler failed."数-10000
我该怎么办?
- 首先,AppleScript 无法扩展波浪号。
- 其次,Finder 不接受 POSIX 路径。
- 第三,
duplicate
命令必须在 Finder 应用程序告诉块中。
- 第四,虽然 Finder 能够创建不可见文件夹,但它无法复制文件,因为不可见文件仅在 "Show Invisible Files" 在首选项文件中设置为 true 时才被考虑,这是不可靠的。
我建议对整个任务使用shell,ditto
可以同时复制文件和创建中间目录。
POSIX path of (path to public folder)
与 ~/Public
相同,但 returns 是完整路径。
我不知道这两个冒号代表什么,所以就省略了。
set publicSubFolder to POSIX path of (path to public folder) & ".folder"
set myself to POSIX path of (path to me)
do shell script "/usr/bin/ditto " & quoted form of myself & space & quoted form of publicSubFolder
我想知道为什么我的这个脚本不正确。 (注意:我是 AppleScript 的新手,所以请忽略它有多糟糕。:P)
set public to "~/Public/"
set p to POSIX path of public
tell application "Finder"
make new folder at p with properties {name:".folder"}
end tell
set sfolder to POSIX path of ((path to me as text) & "::")
set tfolder to "~/Public/.folder/"
duplicate files of sfolder to tfolder
它说
有错误make new folder at p with properties {name:".folder"}
错误"Finder got an error: AppleEvent handler failed."数-10000
我该怎么办?
- 首先,AppleScript 无法扩展波浪号。
- 其次,Finder 不接受 POSIX 路径。
- 第三,
duplicate
命令必须在 Finder 应用程序告诉块中。 - 第四,虽然 Finder 能够创建不可见文件夹,但它无法复制文件,因为不可见文件仅在 "Show Invisible Files" 在首选项文件中设置为 true 时才被考虑,这是不可靠的。
我建议对整个任务使用shell,ditto
可以同时复制文件和创建中间目录。
POSIX path of (path to public folder)
与 ~/Public
相同,但 returns 是完整路径。
我不知道这两个冒号代表什么,所以就省略了。
set publicSubFolder to POSIX path of (path to public folder) & ".folder"
set myself to POSIX path of (path to me)
do shell script "/usr/bin/ditto " & quoted form of myself & space & quoted form of publicSubFolder