使用python子进程调用make会产生与从终端

时间:2018-06-29 23:05:14

标签: python linux makefile subprocess stdout

我正在尝试从python调用make命令,并确保它成功。因此,我从一个简单的子流程调用开始,但是输出与我的终端不同!

我在常规Linux终端上执行“ make RedTB”并得到: make:“ RedTB”是最新的。好的,很好。

但是在Python3.6上,我使用子流程函数执行“ make RedTB”,但从未收到最新消息。相反,我得到了几行以g ++开头的长行,然后出现了一些关于比较运算符的警告,它们是无符号的。即使我继续运行它。

由于它在同一台计算机和同一条命令上,是否应该给出相同的准确输出?

编辑:使用shell = true运行subprocess.run也会产生与没有shell = true时不同的输出.call和.popen。但最终输出的结果与终端仍然不同。

0 个答案:

没有答案