重命名桌面上的所有项目

时间:2014-04-18 22:56:38

标签: applescript desktop renaming

我正在尝试制作一个脚本来自动重命名桌面上的所有项目。以下是我到目前为止的情况:

tell application "Finder"
    activate
    set TheFolder to (path to desktop)
    set theFile to (every item in TheFolder) as text
    set name of item theFile to "This should be the new name"                     
end tell

当我在桌面上只有一个项目时,我尝试了它,并且它有效。但是,之后,当我向桌面添加一个文件夹(内部没有任何内容)时,我尝试了这个错误:

Finder got an error: Can’t set item "Macintosh HD:Users:erictsai:Desktop:untitled folder :Macintosh HD:Users:erictsai:Desktop:untitled folder 1:" to "This should be the new name".

任何人都知道如何解决这个问题?

2 个答案:

答案 0 :(得分:2)

您将获得一个项目列表,然后将列表转换为字符串,即 造成了问题。您需要遍历该列表并应用您的名称 改变每个项目。此外,获取every item将包括磁盘,这可能是 不是你想要的。你也可以简化一下。这是你如何做到的 您不想更改磁盘名称:

tell application "Finder"
    repeat with finderObj in (items in desktop where class of it is not disk)
        -- Make whatever change you want to the name here
        set the name of finderObj to the name of finderObj & " test"
    end repeat
end tell

答案 1 :(得分:1)

every item in TheFolder返回一个列表,然后你应该通过循环遍历列表:

tell application "Finder"
    activate
    set theFolder to (path to desktop)
    set theFiles to (every item in theFolder)
    repeat with aFile in theFiles
        set name of aFile to "This should be the new name"
    end repeat
end tell

脚本将尝试重命名具有相同名称的每个项目,因此重命名第二个项目时会出错。