【发布时间】:2020-07-25 16:41:00
【问题描述】:
当下面的语句被执行时
out1 = subprocess.run("module load python",shell = True, stdout = subprocess.PIPE , stderr = subprocess.STDOUT)
产生了这个错误。
/bin/sh: 模块:找不到命令。
我想使用 python 脚本执行 shell 命令,但上面的语句不起作用,但是当我在 shell 上执行相同的语句时,它工作正常并且没有产生错误。
【问题讨论】:
-
由于
module不是 POSIX shell 的有效内部命令(这是您在此处运行的),因此在您的 PATH 中搜索名称为 module 的可执行文件,但显然没有。因此出现错误消息。 -
那么我应该怎么做才能使命令正常工作?
-
将名为 module 的可执行文件所在的目录放入 PATH 中。
标签: python-3.x linux shell subprocess environment-modules