从Python中获取命令的终端输出
- 论坛
- 从Python中获取命令的终端输出
19 浏览
从Python中获取命令的终端输出
我试着写一个包括Bash命令的函数。我想将命令的输出分配给我的Python变量。我的意思是,函数gitCheck找到我的git仓库的目录,并将其分配给gitRep,但它只给我0。有人知道我该如何做吗?提前感谢您。
def gitCheck(): reference_repositories_path="cat $HOME/.git_reference_repositories | sed 's/GIT_REFERENCES_PATH=//'" gitRep=os.system(reference_repositories_path) print gitRep
输出应该是/home/gwapps/Desktop/GIT_REFERENCE_REPOSITORIES
,但它只给我0
。
admin 更改状态以发布 2023年5月21日
匿名的
0 Comments
您正在获取退出状态。根据 os.system()
的 文档:
在 Unix 上,返回值是进程的退出状态,编码格式与 wait() 指定的格式相同。
...
子进程模块提供了更强大的功能,用于生成新进程并检索其结果;使用该模块比使用此功能更可取。
因此,如果您想检索命令的输出,请使用 subprocess
模块。这里有大量的示例,例如: