【问题标题】:Applescript Error - Can't Get every file of ... folder?Applescript 错误 - 无法获取...文件夹的每个文件?
【发布时间】:2019-10-10 02:16:34
【问题描述】:

我有一个别人写的脚本。它可以在他的计算机上运行,​​但不能在我的计算机上运行。

原来是"as alias",但我一直收到如下错误消息:

"Can’t make file "Macintosh HD:Users:williamsato:Desktop:Photobooth:CurrentSession" into type alias."

所以我根据另一篇帖子中的建议将alias 更改为string

现在我没有收到该错误消息,但我确实收到了一条新消息,如下所示:

"Can’t get every file of "Macintosh HD:Users:williamsato:Desktop:PhotoBooth:CurrentSession"."

它突出显示 “将 SourceFolder 的文件移动到 DestinationFolder 并替换”

不知道出了什么问题。

谢谢

on run {input, parameters}
    set SourceFolder to POSIX file "/Users:/williamsato/Desktop/Photobooth/CurrentSession" as string
    set DestinationFolder to POSIX file "/Users/williamsato/Desktop/Photobooth/PreviousSessions" as string

    tell application "Finder"
        move files of SourceFolder to DestinationFolder with replacing
    end tell
    (* Clear Large Type *)
    tell application "System Events" to keystroke "a" using command down
end run

【问题讨论】:

  • 1.这个脚本是如何运行的? 2. 按照编码,它需要是as alias 3. 有一个: 不应该在/Users:/ 中。 4. 你对tell application "System Events" to keystroke "a" using command down 有什么期望?根据您显示的代码,我认为它没有任何价值!

标签: applescript


【解决方案1】:

以下是形成SourceFolderDestinationFolder 变量和移动文件的三种不同方式:

set SourceFolder to (path to desktop folder as string) & "Photobooth:CurrentSession:" as alias
set DestinationFolder to (path to desktop folder as string) & "Photobooth:PreviousSessions:" as alias

tell application "Finder" to move files of SourceFolder to DestinationFolder with replacing

set SourceFolder to alias "Macintosh HD:Users:williamsato:Desktop:Photobooth:CurrentSession:"
set DestinationFolder to alias "Macintosh HD:Users:williamsato:Desktop:Photobooth:PreviousSessions:"

tell application "Finder" to move files of SourceFolder to DestinationFolder with replacing

set SourceFolder to POSIX file "/Users/williamsato/Desktop/Photobooth/CurrentSession" as alias
set DestinationFolder to POSIX file "/Users/williamsato/Desktop/Photobooth/PreviousSessions" as alias

tell application "Finder" to move files of SourceFolder to DestinationFolder with replacing

注意:示例 AppleScript 代码 就是这样,不包含任何可能的错误处理合适的。用户有责任根据需要或需要添加任何错误处理。查看AppleScript Language Guide 中的try statementerror statement。另请参阅Working with Errors

【讨论】:

  • 感谢您提供这些代码行。我将您提供的每一行代码复制并粘贴到 automator 中,所有 3 行代码都出现此错误:“运行处理程序被指定了多次,或者除了运行处理程序之外还有顶级命令。” p.s.这是升级到 Catalina 后的错误消息,与之前收到的错误消息不同。
  • @William,这三个示例中的每一个都是为了单独使用,而不是一起使用!此外,如果条件与您的原始帖子相比发生了变化,那么您应该编辑问题,或者在适当的情况下提出不同的问题。此外,出于测试目的,这些示例对我来说毫无问题,因为在后面的两个示例中显然用我的名字替换了你的名字。您从未回答我在对您的 OP 的评论中提出的问题,并且没有看到您的实际工作流程和所有正在运行的代码,我无能为力,抱歉。
猜你喜欢
  • 2014-04-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-24
相关资源
最近更新 更多