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
- uptime命令
# uptime 16:04:33 up 9 days, 6:29, 1 user, load average: 0.19, 0.09, 0.06
- 查看/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
- 查看/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秒