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

Mac Automator右键执行Python脚本遭遇权限错误求助

解决Mac Automator右键调用虚拟环境Python的权限问题

问题描述

在MacBook上通过Automator创建右键脚本,调用虚拟环境中的Python执行指定脚本:

/Users/johncole/Desktop/DALL-E/scripting/Dollybot/openai202211/bin/python /Users/johncole/Desktop/DALL-E/scripting/dalle-right_click/right-click-run-expand_picture.py "\""$1""\"
  • 在Automator内点击运行按钮时正常工作
  • 右键点击目录文件运行时,抛出权限错误:

The action “Run Shell Script” encountered an error: “Exception ignored error evaluating path:
Traceback (most recent call last):
File "", line 353, in
PermissionError: [Errno 1] Operation not permitted
Fatal Python error: error evaluating path
Python runtime state: core initialized

Current thread 0x000000011426c600 (most recent call first):
”

已尝试的操作:

  • 确认虚拟环境Python和目标脚本权限设置正确
  • 执行chmod +x修改权限
  • 测试脚本验证Automator具备目录文件操作权限

解决方法

1. 给Automator添加全磁盘访问权限

  • 打开「系统设置」→「隐私与安全性」→「全磁盘访问」
  • 点击列表下方的+按钮,找到Automator.app(路径:/Applications/Automator.app)添加进去
  • 重启Automator后再测试右键脚本

2. 修改Shell脚本的执行环境

在Automator的「运行Shell脚本」动作中,将Shell选项从默认的/bin/zsh或/bin/bash改为/bin/sh,同时确保传递输入设置为「作为参数」

3. 改用激活虚拟环境的方式执行脚本

修改Shell脚本内容,先激活虚拟环境再运行目标脚本,避免直接调用虚拟环境Python的路径问题:

# 激活虚拟环境
source /Users/johncole/Desktop/DALL-E/scripting/Dollybot/openai202211/bin/activate
# 执行目标脚本
python /Users/johncole/Desktop/DALL-E/scripting/dalle-right_click/right-click-run-expand_picture.py "$1"
# 退出虚拟环境(可选)
deactivate

4. 修复Python路径评估问题

错误提示指向「error evaluating path」,可在脚本开头添加环境变量配置,避免路径冲突:

export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
export PYTHONPATH=""

5. 重新创建虚拟环境

如果虚拟环境是用第三方工具(如pyenv、conda)创建的,尝试用系统原生命令重新创建,规避环境变量或权限异常:

python3 -m venv /Users/johncole/Desktop/DALL-E/scripting/Dollybot/new_venv
# 激活新环境并重新安装依赖
source /Users/johncole/Desktop/DALL-E/scripting/Dollybot/new_venv/bin/activate
pip install -r /path/to/requirements.txt

内容的提问来源于stack exchange,提问作者PFAS Expert

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 10:45:19