如何在AppleScript的POSIX路径中使用变量?

时间:2015-10-26 03:33:15

标签: path applescript finder

我已经尝试了一段时间用一个变量替换POSIX路径中的一个部分,但我没有成功。这是我试图开发的脚本:

tell application "Finder"
    duplicate POSIX file "/Users/**Variable**/Documents/img.jpg" to POSIX file "/Users/**Variable**/Desktop/" with replacing
end tell

路径中的部分是我希望变量存在的位置。我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

你用&符号来打破字符串和变量。

此外,最好在脚本Finder之前将posix路径转换为Mac标准冒号:路径。 Finder的重复功能在这些方面从10.9开始就出现了错误。 我已经打破了一些强制措施,所以你可以看到发生了什么。

-- define file and user names
set fileName to "img.jpg"
set user1 to "Mitc"
set user2 to "Mitc"

-- create posix path strings
set path1 to "/Users/" & user1 & "/Documents/" & fileName
set path2 to "/Users/" & user2 & "/Desktop/"

-- convert posix paths into colon paths
set ref1 to (POSIX file path1) as string
set ref2 to (POSIX file path2) as string

-- display dialog ref1 & return & ref2 -- to test
tell application "Finder" to duplicate alias ref1 to alias ref2 with replacing

答案 1 :(得分:0)

你必须使用" &安培;告诉脚本停止读取目录并添加变量,所以这里是结果:

tell application "Finder"
     duplicate POSIX file "/Users/" & variable & "/Documents/img.jpg" to POSIX file "/Users/" & variable & "/Desktop/" with replacing
end tell

(确保使用" set"命令生成变量EG。)

set variable to "text"

希望这有帮助!