0
閱讀
import subprocess
import tempfile
fd = tempfile.NamedTemporaryFile()
print(fd)
print(fd.name)
p = subprocess.Popen("date", stdout=fd).communicate()
print(p[0])
fd.close()
這將返回:使用NamedTemporaryFile從標準輸出通過子在Linux上
<open file '<fdopen>', mode 'w' at 0x7fc27eb1e810>
/tmp/tmp8kX9C1
None
相反,我想它會返回類似:
Tue Jun 23 10:23:15 CEST 2015
我嘗試添加mode="w"
,如以及delete=False
,但無法成功使其工作。
你知道'subprocess.check_output()'? – jfs
@ J.F.Sebastian是的。實際上,我希望傳遞給系統的命令是'qstat -xml -r'(http://stackoverflow.com/a/26104540/597069)。不幸的是,它似乎與「日期」不同。 – tflutre
如果你需要輸出'qstat';你應該問一下'qstat'。看起來像[XY問題](http://meta.stackexchange.com/a/66378/137096)。你爲什麼在這裏需要'NamedTemporaryFile'? – jfs