0

我正在尝试使用内置的 bashtime来测量命令的执行需要多长时间。

问题是从定时命令中获取返回码。调查后

help time

似乎时间总是返回 0 而不是执行命令的返回码。有没有办法获取定时命令的返回状态?

4

3 回答 3

3

man time给我:

如果程序正常退出,time的返回值就是它执行和测量的程序的返回值。否则,返回值为 128 加上导致程序停止或终止的信号编号。

注意有一个 shell-builtintime和一个/usr/bin/time

/usr/bin/time false
/usr/bin/time true

给我适当的(1 和 0)错误代码。

于 2012-10-18T09:26:23.567 回答
1

我检查help time并显示帮助消息timetimes

为了time

Exit Status:
The return status is the return status of PIPELINE.

为了times

Exit Status:
Always succeeds.

有没有可能是你看错了?

于 2012-10-18T09:50:25.267 回答
1
time lsa
-bash: lsa: command not found

real    0m0.001s
user    0m0.000s
sys 0m0.000s

echo $?
127

time ls
aa.aa

real    0m0.564s
user    0m0.000s
sys 0m0.001s

echo $?
0

127如果失败

于 2012-10-18T11:26:48.227 回答