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

Ubuntu 22.04.2 LTS环境下从Python/Shell脚本执行GAM命令时权限拒绝或命令未找到问题求助

Ubuntu 22.04.2 LTS环境下从Python/Shell脚本执行GAM命令时权限拒绝或命令未找到问题求助

大家好,我目前在用Ubuntu 22.04.2 LTS系统,日常用bash操作,Python脚本也是在虚拟环境(venv)里运行的。最近碰到了个头疼的问题:GAM命令在命令行能正常跑,但放到Python或Shell脚本里就各种报错,想请各位帮忙分析下。

问题1:Python脚本调用GAM报权限拒绝

我在命令行直接执行GAM命令完全没问题,但在Python脚本里用os.system调用时:

os.system("gam csv account.csv gam update user ~EmailAddress org ~Abbrev")

会返回错误:

sh: 1: gam: Permission denied

我已经把GAM所在的路径/home/USER/googlesync/venv/bin加到了.bashrc的PATH环境变量里,命令行直接跑GAM命令是正常的,能顺利更新所有账号。

问题2:Shell脚本执行GAM同样报错,sudo运行问题更多

我写了一个daily.sh脚本,内容如下:

#!/bin/sh

python connection.py

gam csv accounts.csv gam create user ~EmailAddress password ~Password firstname ~FirstName lastname ~LastName org ~Abbrev

gam csv accounts.csv gam update user ~EmailAddress org ~Abbrev

直接运行这个脚本时,会出现一堆权限拒绝的错误:

sh: 1: gam: Permission denied
sh: 1: gam: Permission denied
daily.sh: 4: gam: Permission denied
daily.sh: 5: gam: Permission denied

试着用sudo daily.sh运行的话,错误变成了命令未找到:

daily.sh: 3: python: not found
daily.sh: 4: gam: not found
daily.sh: 5: gam: not found

相关文件权限和命令输出

我查了下相关文件的权限:

  • daily.sh:-rwxrwxr-x 1 tech tech 235 Aug 10 08:48 daily.sh
  • powerschoolconnection.py:-rw-rw-r-- 1 tech tech 20803 Aug 10 09:11 powerschoolconnection.py
  • 虚拟环境目录venv:drwxrwxr-x 6 tech tech 4096 Jul 18 15:05 venv

另外,运行which gam没有任何输出,而which -a gam返回的是./gam,也就是当前目录下的GAM文件。

有没有朋友遇到过类似的问题?麻烦帮忙分析下原因,谢谢啦!

备注:内容来源于stack exchange,提问作者Annisa Samsi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.21 15:44:49