评论

收藏

[Linux] Linux 查看进程启动时间、运行时间

服务系统 服务系统 发布于:2022-09-23 17:53 | 阅读数:414 | 评论:0

我使用3A服务器的时候,经常需要查看进程,下面分享给你们
注意:top 命令输出的 TIME+ 字段是进程占用 CPU 运行的时间,并非其真正的运行时间
Linux系统下查看进程启动时间和运行时间的命令:
ps -o lstart -p PID       #根据PID来查询
 
ps -o lstart,etime -p PID     #根据PID来查询,打印出启动时间和已经运行的时间
 
ps -eO lstart | grep PROCESS  #根据进程名字查询



提示:
1, 大写的O表示preloaded,小写的o表示user-defined,e表示all processes
2, 如果查出来的时间是1-16:15:58, 则表示该运程运行了1天16小时15分钟
3, etime表示elapsed time, 即程序已经运行的时间
例子:
$ ps -o lstart,etime -p 13062  #根据PID打印出启动时间和持续时间
STARTED   ELAPSED
Thu Sep 21 09:41:40 2018  1-01:50:35
$ ps -eo pid,lstart,cmd  #打印出所有进程(-e)的PID,启动时间
3428 Mon Nov  6 20:55:20 2018 /sbin/udevd -d
3495 Mon Nov  6 20:55:22 2018 /sbin/rsyslogd -i /var/run/syslogd.pid -c 5
3508 Mon Nov  6 20:55:22 2018 /usr/sbin/nscd
3532 Mon Nov  6 20:55:29 2018 /usr/sbin/snmpd -LS 2 d -Lf /dev/null -p /var/run/snmpd.pid -a
3548 Mon Nov  6 20:55:29 2018 /usr/sbin/sshd
3557 Mon Nov  6 20:55:29 2018 ntpd -u ntp:ntp -p /var/run/ntpd.pid -g
3568 Mon Nov  6 20:55:29 2018 crond
#依次打印出某进程的pid,uid,user,启动时间,持续时间,占用CPU时间(cputime),以及cmd
$ ps -eo pid,euid,euser,lstart,etime,cputime,cmd | grep searcher_server
7259  7259 Fri Sep 22 11:36:21 2018     00:01 S pts/0  00:00:00 grep 13062
13062 13062 Thu Sep 21 09:41:40 2018  1-01:54:42 S ?    1-15:50:04 /export/App/jd_search/searcher/server/bin/searcher_server