Linux获取进程(系统启动时间和运行时间)运行时间

发布于:2024-03-04 ⋅ 阅读:(47) ⋅ 点赞:(0)

Linux获取进程运行时间

思路:使用 ps - o命令

ps -p 986 -o etime可以获取进程986的执行时间,不论系统时间有没有发生改变,它都可以返回正确的结果:

总结:etime 是真正的程序运行时间,而不是系统运行时间与进程启动之间之差。

常用命令demo:

ps -eo pid,tty,user,comm,lstart,etime|grep redis

参数说明:
pid:进程ID
tty:终端
user:用户
comm:进程名
lstart:开始时间
etime:运行时间

demo2:一次查询多个进程
思路:使用 ;分隔执行多个命令即可

# ps -eo pid,tty,user,comm,lstart,etime|grep redis;ps -eo pid,tty,user,comm,lstart,etime|grep redis;ps -eo pid,tty,user,comm,lstart,etime|grep python;
18882 ?        root     redis-server    Mon Jul 13 16:24:29 2020  2-23:11:48
18882 ?        root     redis-server    Mon Jul 13 16:24:29 2020  2-23:11:48
11624 pts/0    root     python3.6       Thu Jul 16 14:15:09 2020    01:21:08
28733 pts/0    root     python3.6       Thu Jul 16 11:51:34 2020    03:44:43

demo3: 简化版,只保留运行时间和进程名

ps -eo comm,etime|grep redis

Linux下如何查看系统启动时间和运行时间

Linux下如何查看系统启动时间和运行时间以及安装时间
参考URL: https://blog.csdn.net/qq_41781322/article/details/90407201

  1. uptime命令
# uptime 
 16:04:33 up 9 days,  6:29,  1 user,  load average: 0.19, 0.09, 0.06
  1. 查看/proc/uptime文件计算系统启动时间
# cat /proc/uptime
801028.49 3158602.23

系统已运行的时间801028.49 秒,运用系统工具date即可算出系统启动时间

date -d "$(awk -F. '{print $1}' /proc/uptime) second ago" +"%Y-%m-%d %H:%M:%S"

输出: 2020-07-07 09:34:49

  1. 查看/proc/uptime文件计算系统运行时间
cat /proc/uptime| awk -F. '{run_days=$1 / 86400;run_hour=($1 % 86400)/3600;run_minute=($1 % 3600)/60;run_second=$1 % 60;printf("系统已运行: %d天%d时%d分%d秒",run_days,run_hour,run_minute,run_second)}'

输出:系统已运行:9天6时33分54秒