从python获取命令的终端输出
我试图编写一个包含bash命令的函数。我想将命令的输出分配给python中的变量 我的意思是,gitCheck函数找到我的git存储库的目录并将其分配给gitRep,但它只给我0。有人知道我怎么做吗?提前谢谢从python获取命令的终端输出,python,shell,terminal,Python,Shell,Terminal,我试图编写一个包含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_r
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\u REFERENCE\u存储库
但是它给了我一个退出状态。根据
os.system()
:
在Unix上,返回值是中编码的进程的退出状态
为wait()指定的格式
子流程模块为繁殖提供了更强大的工具
新流程和检索其结果;使用该模块是非常困难的
比使用此函数更好
因此,如果要检索命令的输出,请使用subprocess
模块。这里有很多这样的例子,例如:
os.system()
:
在Unix上,返回值是中编码的进程的退出状态
为wait()指定的格式
子流程模块为繁殖提供了更强大的工具
新流程和检索其结果;使用该模块是非常困难的
比使用此函数更好
因此,如果要检索命令的输出,请使用subprocess
模块。这里有很多这样的例子,例如: