我一直在尝试找到一种合适的方法来监视 shell 中经过的时间。基本上,我要一个秒表。最终结果很容易实现;我见过使用time read
,然后在完成后按 Enter 的示例,但该方法会使当前终端无法使用。
理想情况下,我想要这样的东西:
timer start
(do some work, vim, python, etc.)
timer stop
如果有一种方法可以暂停计时器,那就太好了。作为参考,我计划用它来计算完成麻省理工学院 OCW 的编程作业所需的时间。因此,由于作业可能需要多次完成,因此一种暂停和继续计时器的方法将是有益的。
有这样的事吗?
答案1
你可以尝试一个 shell 脚本(称之为timer.sh
),如下所示:
. timer.val
case "$1" in
start)
echo $TIMERSTART
echo "TIMERSTART=`date +%s`" > timer.val
echo $TIMERSTART
;;
stop)
echo $TIMERSTART
TIMEREND=`date +%s`
echo $TIMEREND
let RESULT=$TIMEREND-$TIMERSTART
echo $RESULT
;;
*)
echo "no command"
esac