我正在尝试创建一个小脚本,为我做一些基准测试。我正在使用subprocess.Popen
来执行time命令。代码示例:
import subprocess
import shlex
command = shlex.split("time thing_im_benchmarking")
p = subprocess.Popen(command)
p.wait()
我得到的输出是
2.58user 0.04system 0:02.83elapsed 92%CPU(0avgtext + 0avgdata 11568maxresident)k 0输入+ 0输出(0major + 791minor)pagefaults 0swaps
我真正想要的是
real 0m3.048s
user 0m2.784s
sys 0m0.040s
如何让Popen执行内置的bash命令?
答案 0 :(得分:3)
将shell=True
传递给subprocess.Popen()
答案 1 :(得分:0)
我知道这有点晚了,但是为时间程序获取标准化输出的方法是使用标志-p。这将根据POSIX 2标准为您提供时间输出。当我尝试使用自动收集它们的程序来评估我的时间时,这对我帮助很大。