插件窝 干货文章 linux查看进程时间

linux查看进程时间

时间 进程 CPU 命令 922    来源:    2025-04-05

在 Linux 中查看进程时间(包括进程运行时间、CPU 占用时间等)可以使用以下几种方法:


1. ps 命令

最常用的进程查看工具,可以显示进程的 CPU 时间、启动时间等:

ps -eo pid,user,comm,lstart,etime,time,pcpu
  • lstart: 进程启动的具体时间(年月日时分秒)
  • etime: 进程已经运行的时间(格式 DD-HH:MM:SS
  • time: 进程占用 CPU 的累计时间(格式 HH:MM:SS
  • pcpu: CPU 占用百分比

示例(查看指定进程的启动时间和运行时间)

ps -p <PID> -o pid,comm,lstart,etime,time

2. top / htop 命令

  • top:动态显示进程信息,包含 CPU 时间(按 Shift + M 按内存排序,Shift + P 按 CPU 排序)。

    top
    

    top 界面中:

    • TIME+ 列:进程占用 CPU 的总时间(格式 MM:SS.ss)。
    • c 可以显示进程的完整启动命令。
  • htop(需安装):

    htop
    

    更直观,直接显示进程的 CPU 时间和启动时间。


3. uptime 命令

查看系统整体运行时间(但不会显示单个进程时间):

uptime

输出示例:

 10:30:45 up 2 days,  5:15,  3 users,  load average: 0.00, 0.01, 0.05

4. /proc/<PID>/stat 文件

通过内核的 /proc 文件系统获取进程详细信息:

cat /proc/<PID>/stat
  • 14/15 列:进程占用 CPU 的 用户态时间(jiffies)内核态时间
  • 22 列:进程启动时间(单位:jiffies,需转换)。

转换示例(将 jiffies 转为秒)

awk '{print "CPU Time (sec): " ($14+$15)/100}' /proc/<PID>/stat

5. pidstat 命令(sysstat 包)

监控进程的 CPU 使用情况,包括历史数据:

pidstat -p <PID> 1 5  # 每1秒采样,共5次

输出包含: - %CPU:CPU 使用率。 - CPU:进程使用的 CPU 编号。 - Command:进程名。


6. time 命令

测量命令执行时间(适用于新启动的进程):

time <command>

示例:

time ls -l

输出: - real:实际耗时(墙钟时间)。 - user:用户态 CPU 时间。 - sys:内核态 CPU 时间。


总结

需求 推荐命令
查看进程启动/运行时间 ps -eo pid,lstart,etime,cmd
实时监控进程 CPU 时间 tophtop
详细进程统计 cat /proc/<PID>/stat
历史 CPU 时间记录 pidstat

根据场景选择合适的方法即可!