访问AppleScript中的文件夹

时间:2013-09-19 00:14:20

标签: macos applescript directory

对不起,请在这里使用AppleScripting完成初学者。

我正在尝试做一件非常简单的事情,将文件从一个文件夹移动到另一个文件夹。

tell application "Finder"

    set this_folder to "Users:chris.nicol:Movies:SmartConverter:"

    set this_list to every file of this_folder
    repeat with i in this_list
        --if i does not start with "x" then
        move i to "users:chris.nicol:music:itunes:itunes media:automatically add to itunes:"
        --end if
    end repeat
end tell

但是我一直收到错误:

enter image description here

我在文件夹上尝试了不同的命令(count,parentContainer等),但是我得到了相同类型的错误。我尝试过不同的文件夹格式......

  • 用户/ chris.nicol /电影/ SmartConverter /
  • Macintosh HD:用户:chris.nicol:电影:SmartConverter

关于我做错的任何想法?

提前致谢, 克里斯

3 个答案:

答案 0 :(得分:2)

简单提示...如果您想找到应该使用的正确路径,请尝试此操作并在结果字段中查找正确的路径。您将看到需要硬盘驱动器的名称Macintosh HD。请注意,如果您想要文件的路径,也可以使用“选择文件”。

(choose folder) as text

接下来,您将看到的路径是一个字符串。 Applescript将其视为字符串,而不是文件或文件夹的路径。因此,当您想要将字符串用作路径时,您必须在其前面放置“file”或“folder”一词,以使applescript正确使用它。因此,您的脚本应如下所示。请注意,move命令可以处理文件列表,因此不需要重复循环。

set this_folder to "Macintosh HD:Users:chris.nicol:Movies:SmartConverter:"
tell application "Finder"
    set this_list to every file of folder this_folder
    move this_list to folder "Macintosh HD:Users:chris.nicol:music:itunes:itunes media:automatically add to itunes:"
end tell

答案 1 :(得分:1)

尝试:

set thisFolder to (path to movies folder as text) & "SmartConverter"
set thatFolder to (path to music folder as text) & "itunes:itunes media:automatically add to itunes"

tell application "Finder" to move files of folder thisFolder to thatFolder

答案 2 :(得分:-2)

您必须在其中一个文件夹中包含一些不可见或不可复制的文件。将without invisibles之类的内容添加到set this_folder行的末尾,或者完全摆脱循环并简单地调用

move files of entire contents of this_folder to (the Add Automatically folder)