我怎样才能输出一个命令需要的实时(而不是别的)?
例:
这不会工作:
$ time -p sleep 2 | grep real real 2.00 user 0.00 sys 0.00
我想要的东西是:
$ print-real-time sleep 2 2.00
你需要首先捕获time的输出 。 然后你可以处理它。
一个非BASH特定的解决scheme(显式使用/usr/bin/time所以它不是pipe道狂躁的bash内build)
/usr/bin/time -p some_command_or_subshell 2>&1 | grep real | awk '{print $2}'
根据你提供这个输出给你的任何东西的微妙特性,你可能想把你的主题命令的输出redirect到/ dev / null。
这是一个hacky解决scheme,使用cut来分割字段。
time -p sleep 2 | grep real | cut -f2 -d' '
你也可以使用awk :
time -p sleep 2 | grep real | awk '{ print $2 }'