![记录一天内 Linux 命令(编译器)运行的总时间](https://linux22.com/image/1350510/%E8%AE%B0%E5%BD%95%E4%B8%80%E5%A4%A9%E5%86%85%20Linux%20%E5%91%BD%E4%BB%A4%EF%BC%88%E7%BC%96%E8%AF%91%E5%99%A8%EF%BC%89%E8%BF%90%E8%A1%8C%E7%9A%84%E6%80%BB%E6%97%B6%E9%97%B4.png)
我感兴趣的是我的机器在一个工作日内编译 scala 所花的时间。每次运行 scalac 命令时,是否有某种方法可以记录其总运行时间,即使它是由其他工具(例如 sbt)运行的?
我正在考虑将 /usr/bin/scalac 重命名为 /usr/bin/scalac_raw,并编写一个新的 /usr/bin/scalac,这只是一个运行 scalac_raw(传递所有命令行参数)的 bash 脚本,然后在某处记录其运行时间。
这是一种合理的方法吗?如果是,我该如何编写这样的脚本?如果不是,还有其他想法吗?
答案1
如果您所需要的只是时间戳,那么您可以使用以下模型:
scalac 脚本:
#!/bin/sh
date >> ~/scalac.log
scalac-raw $@
date >> ~/scalac.log
答案2
使用时间程序。例如:time 命令
但是,如果这个程序不存在,将命令包装在 shell 脚本中总是有帮助的。但是,在这个特定的上下文中,这不是一个合理的方法。