Python子进程check_output和调用为pwgen的相同参数产生不同的结果

时间:2013-02-22 17:31:14

标签: python subprocess

我正在使用子进程call()方法执行pwgen实用程序来创建12个字符的密码。当我使用check_output()时,我得到了相同参数的不同结果。

这是一个有效的代码片段:

import tempfile
import subprocess
import os

f = tempfile.NamedTemporaryFile(delete=False)
f.write('random data\n')
f.close()
subprocess.call(['/usr/bin/pwgen', "-H", f.name, "12", "1"])
print subprocess.check_output(['/usr/bin/pwgen', "-H", f.name, "12", "1"])
os.unlink(f.name)

示例输出为:

  

rioH7IeSu6th
  giyahvoopehi

我希望在两种情况下结果都相同。有谁知道我需要做些什么来使check_output()call()的输出匹配?

0 个答案:

没有答案