发博文
正文 字体大小:

如何获取进程的启动时间

(2007-06-22 11:38:44)
标签:

工作

 今天遇到一个问题,想知道一个定时更新数据库Daemon程序的启动时间,发现可以用以下方法解决:
 
PID=$1
JIFFIES=`cat /proc/$PID/stat | cut -d" " -f22`
UPTIME=`grep btime /proc/stat | cut -d" " -f2`
START_SEC=$(( $UPTIME + $JIFFIES / 100 ))
START_TIME=`date -d "1970-1-1 UTC $START_SEC seconds"`
echo $START_TIME
 
其中PID中要传入对应的进程ID。
 
其中/proc/stat中的btime指的是系统的启动时间,也就是boot time,
对于一个具体的进程  /proc/$pid/stat中对应的第22项指的是 该进程相对于系统启动以来的执行时间。
 
接下来就很清楚了,呵呵
 

阅读 评论 收藏 转载 打印举报
  • 评论加载中,请稍候...

       

    验证码: 请点击后输入验证码 收听验证码

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 不良信息反馈 电话:4006900000 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有