AppleScript 将 shell 输出列表传递给“从列表中选择”?

AppleScript 将 shell 输出列表传递给“从列表中选择”?

我正在编写一个简单的 AppleScript,用于 Automator 应用程序,该应用程序要求用户从可用的 Backblaze B2 存储桶列表中进行选择,目的是将该选择传递到 rclone 将远程存储桶作为驱动器安装的 shell 脚本中。

这是我的获取可用存储桶列表的脚本:

set AppleScript's text item delimiters to ","
set bucketGet to every text item of (do shell script "/usr/local/bin/rclone lsf backblaze: --dirs-only")
set bucketChoice to (choose from list bucketList)

输出rclone lsf如下所示:

bucket-1/
bucket-2/
bucket-3/
bucket-4/

但这只会将第一行bucket-1/放入弹出框中以供选择。如何让输出的所有行都包含在可供选择的列表中?

编辑:我尝试set AppleScript's text item delimiters to ","用替换set AppleScript's text item delimiters to character id 10,但结果相同。

答案1

我自己解决了这个问题:

set bucketGet to do shell script "/usr/local/bin/rclone lsf backblaze: --dirs-only"
set bucketList to paragraphs of bucketGet
set bucketChoice to choose from list bucketList with prompt "Please select a bucket to mount:"

现在我可以获得所有结果作为选项以供选择。

相关内容