You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Mac Automator中向Shell脚本传递两个变量

修复Automator标签工作流的参数传递问题

核心问题

你的脚本参数顺序搞反了,且未给变量加引号处理空格,导致tag命令无法正确识别标签列表和文件路径。

正确工作流设置

  1. 收集文件路径

    • 添加「Ask for Finder Items」动作,设置为「允许选择:单个项目」,确保只选一个文件。
    • 添加「Set Variable」动作,将变量命名为filePath。
  2. 收集标签列表

    • 添加「Ask for Text」动作,在提示文本里写“输入逗号分隔的标签(如:Red,Important)”。
    • 添加「Set Variable」动作,将变量命名为tagList。
  3. 修正Shell脚本

    • 添加「Run Shell Script」动作,在「传递输入」选项中选择「作为自变量」。
    • 替换脚本内容为:
      /usr/local/bin/tag -a "$2" "$1"
      
      解释:
      • "$2"对应你输入的标签列表(第二个传入的变量)
      • "$1"对应选中的文件路径(第一个传入的变量)
      • 双引号是必须的,避免路径或标签包含空格时出错。

额外检查

  • 确认tag工具路径正确:在终端运行which tag,如果输出不是/usr/local/bin/tag,就把脚本里的路径换成终端输出的结果。
  • 测试时输入带空格的标签(如Work Project)和带空格的文件路径,验证是否能正常添加标签。

内容的提问来源于stack exchange,提问作者Ian Piper

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 01:11:01