得到Popen的奇怪输出

时间:2017-01-29 19:12:35

标签: python subprocess popen

我正在尝试使用从类似问题中获得的以下代码在Python中打印终端:

cmd = 'test'
output = subprocess.Popen(cmd, stdout=subprocess.PIPE ).communicate()[0]
print(output)

但是这样做会给我输出:

b''

如何修复我的代码以正确输出到终端?

1 个答案:

答案 0 :(得分:6)

从手册页:

test - check file types and compare values

测试文件的程序。当你在命令行上运行它时它根本不打印任何东西(因为这个命令适用于提供给它的文件名;而且你没有传递任何参数,它根本没什么好说的)

那里的输出告诉你(其中b''表示:空字节八位字节数组;有关详细信息,请参阅here。)

所以这里真正的答案是:在你开始想知道在python中调用它时工具是什么时...直接在shell上运行它。