python - 将命令的输出存储在变量中

标签 python fabric

我有一个 python 结构文件 fabfile.py。我希望将本地命令的结果存储在一个变量中,以便我可以针对各种情况对其进行测试。例如我想这样做...

substring = "up-to-date"  
msg = local("git pull")
if msg.find(substring) == -1:
   "some action"

但我无法将输出存储在“msg 变量”中。我该怎么做?

最佳答案

我以前的做法是:

import subprocess

p = subprocess.Popen(['git', 'pull'], stdout=subprocess.PIPE, 
                                      stderr=subprocess.PIPE)
out, err = p.communicate()

if "up-to-date" in out:
   "some action"

关于python - 将命令的输出存储在变量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30916335/

相关文章:

python - 循环选择 5 种中的 3 种组合

python - 使用 Boost.python 将 Python 列表传递给 C++ 向量

python - 有没有办法在结构文件中进行滚动部署?

python - Fabric 2.0.1 env 的替代品是什么?

python - 如何设置 Pycharm 以在 Windows 上调试 Fabric fabfile?

java - 在使用 Jena (java) 或 RDFLib (python) 时,我应该如何确定是将本体打开为 'turtle' 还是 'xml' ?

java - 有没有用java序列化的python反序列化的库

python启动包含暂停命令的批处理文件,抛出异常

django + virtualenv = 原子升级 - 有可能吗?

python fabric检查hadoop文件是否存在