关于 Linux 上的计时程序的一个小问题:time 命令允许 测量程序的执行时间:
[ed@lbox200 ~]$ time sleep 1
real 0m1.004s
user 0m0.000s
sys 0m0.004s
效果很好。但是如果我尝试将输出重定向到一个文件,它会失败。
[ed@lbox200 ~]$ time sleep 1 > time.txt
real 0m1.004s
user 0m0.001s
sys 0m0.004s
[ed@lbox200 ~]$ cat time.txt
[ed@lbox200 ~]$
我知道还有其他的时间实现选项 -o 来写入文件,但是 我的问题是关于没有这些选项的命令。
有什么建议吗?
最佳答案
试试
{ time sleep 1 ; } 2> time.txt
将“时间”的 STDERR 和您的命令组合到 time.txt 中
或者使用
{ time sleep 1 2> sleep.stderr ; } 2> time.txt
将“sleep”中的 STDERR 放入“sleep.stderr”文件中,只有“time”中的 STDERR 放入“time.txt”中
https://stackoverflow.com/questions/13356628/