4
votes

I just want to move an image from one folder to the other, replacing the one that's already in there:

tell application "Finder"
      copy file "/Users/xx/Documents/img.jpg" to folder "/Users/xx/Documents/State"
   end tell

When I run it, I get an error message saying

Finder got an error: Can’t set folder [path] to file [path]"."number -10006 from folder [path]

Please help me!

3

3 Answers

8
votes

Try:

tell application "Finder"
    duplicate POSIX file "/Users/xx/Documents/img.jpg" to POSIX file "/Users/xx/Documents/State" with replacing
end tell

Or

tell application "Finder"
    move POSIX file "/Users/xx/Documents/img.jpg" to POSIX file "/Users/xx/Documents/State" with replacing
end tell
3
votes

As @adayzdone notes, the error appears because you're using a Posix-style path without declaring it.

Another approach is to use colon-separated HFS paths, like so:

move file "Macintosh HD:Users:xx:Documents:img.jpg" ¬
to "Macintosh HD:Users:xx:Documents:State:" with replacing

With colon-separated paths you need to include the whole thing, including the volume name (I'm assuming Macintosh HD here), otherwise it'll throw our good friend error 10,006.

1
votes

It helped me:

set theSource to POSIX file "/Users/xx/Documents/img.jpg"
set theDest to POSIX file "/Users/xx/Documents/State"

tell application "Finder"
    move theSource to folder theDest with replacing
end tell