linux下什么命令可以知道哪个程序正在使用更多进程?

linux下什么命令可以知道哪个程序正在使用更多进程?

我想知道Linux中具有更多进程的程序的命令。

top - 05:56:00 up 1203 days, 21:29,  1 user,  load average: 1.08, 1.14, 0.88
Tasks: 1142 total,   2 running, 1139 sleeping,   0 stopped,   1 zombie
Cpu(s):  2.7%us,  0.4%sy,  0.0%ni, 96.3%id,  0.0%wa,  0.0%hi,  0.6%si,  0.0%st
Mem:  132128620k total, 131312592k used,   816028k free,   530768k buffers
Swap:  4194296k total,        0k used,  4194296k free, 12164416k cached

答案1

要获取当前使用 CPU 最多的 10 个进程,可以使用以下命令

ps -ax -opid,pcpu,user,comm --sort=-pcpu | head -n 11

这至少在 Ubuntu Linux 上有效,并生成进程 ID、CPU 百分比、运行进程的用户的用户名和命令名称的列表。

--sort=-pcpu这里使用的标志告诉您ps按降序对结果进行排序,并head给出前 11 行输出(标题和 10 个进程)。例如:

   PID %CPU USER     COMMAND
 20975  2.5 100113   mongod
  4268  0.8 root     lxcfs
  3956  0.3 root     txg_sync
133411  0.3 100115   mongod
     8  0.2 root     rcu_sched
   187  0.2 root     kswapd0
  3462  0.2 root     z_wr_iss
  3463  0.2 root     z_wr_iss
  3464  0.2 root     z_wr_iss
  3465  0.2 root     z_wr_iss

ps有关详细信息,请参阅系统上的手册( man ps)。

相关内容