AppleScript error “Can’t make \”“ into type integer.” number -1700

社会主义新天地 提交于 2020-01-24 23:01:47

问题


I know this error has been covered here but I have been searching through the answers for days now and when I think I have cracked it I end up breaking the code somewhere else.

I am trying to run AppleScript in Xcode to make a backup of a folder on a set network machine.

The problem I am having is that the backup is date stamped and in a sub folder on the users Desktop. I am trying to avoid using hard POSIX paths to make the final app universal. All the solutions I have found don't take this in to account.

I apologize for the messy code but I am still learning AppleScript and so end up hashing different bits of code together. my code is

set catFolder to "Catalyst AA"
set bckup to "Backups"
set myDesktop to path to desktop folder as alias
set main_folder to ((path to desktop folder) & "Backups") as string

tell application "Finder"
if not (exists folder (bckup) in myDesktop) then
    set main_folder to (make new folder at desktop with properties {name:bckup}) as      alias
else

    if not (exists folder (catFolder) in main_folder) then
        set cat_folder to (make new folder at folder main_folder with properties {name:catFolder}) as alias
    end if
end if

end tell



try
mount volume "afp://10.0.0.1/Content SSD AA/Catalyst/Catalyst 4.40_m373_HD"

set d to (year of (current date) as text) & "-" & (month of (current date) as integer as text) & "-" & (day of (current date) as text) & "-" & (time string of (current date))
tell application "Finder"
    set f to make new folder at POSIX file "~/Desktop/Backups/Catalyst AA" with properties {name:d}
    duplicate POSIX file "/Volumes/Content SSD AA/Catalyst" to f
end tell
try
    tell application "Finder"
        eject disk "Content SSD AA"
    end tell
end try
end try

the error file is

tell application "Finder"
path to desktop as alias
    --> alias "Macintosh HD:Users:ben:Desktop:"
path to desktop
    --> alias "Macintosh HD:Users:ben:Desktop:"
exists folder "Backups" of alias "Macintosh HD:Users:ben:Desktop:"
    --> true
Result:
error "Can’t make \"Catalyst AA\" into type integer." number -1700 from "Catalyst AA" to   integer

I appreciate it if someone can point out where I'm going wrong.

Thanks for your time

Ben


回答1:


Try this:

set folderPath to POSIX path of (path to desktop as text) & "Backups/Catalyst AA"
do shell script "mkdir -p " & quoted form of folderPath

try
    mount volume "afp://10.0.0.1/Content SSD AA/Catalyst/Catalyst 4.40_m373_HD"
    set d to (year of (current date) as text) & "-" & (month of (current date) as integer as text) & "-" & (day of (current date) as text) & "-" & (time string of (current date))
    tell application "Finder"
        set f to make new folder at POSIX file folderPath with properties {name:d}
        duplicate POSIX file "/Users/unimac/Desktop/output.csv" to f
    end tell
    try
        tell application "Finder"
            eject disk "Content SSD AA"
        end tell
    end try
end try


来源:https://stackoverflow.com/questions/21766733/applescript-error-can-t-make-into-type-integer-number-1700

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!