我想知道我的程序使用了多长时间。例如,如果我使用我的网络浏览器,我想知道开始和关闭时间以获得总使用时间。
基本上,我想知道应用程序何时启动以及何时结束,并且根据事件执行诸如在文件中注册时间之类的操作。
我搜索过有关监听内核事件或类似内容的信息,但一无所获。我还尝试使用supervisord,但它说进程关闭太快,没有记录任何内容。
我的另一个尝试是使用 pyinotify 库来监视 /proc 文件夹,但完全失败了。
我在 Ubuntu 上工作。有什么建议吗?提前谢谢
这些是我的资料来源
答案1
您可以使用如下 Bash 脚本获取应用程序的运行时:
#!/bin/bash
convertsecs() {
((h=${1}/3600))
((m=(${1}%3600)/60))
((s=${1}%60))
printf "%02d:%02d:%02d\n" $h $m $s
}
startime=$( date +%s )
firefox && endtime=$( date +%s )
let runtime=endtime-startime
echo "$( date )"" You have run firefox for ""$( convertsecs $runtime )" >> app-runtime.log
资料来源convertsecs 函数