一.查看进程信息

第一种:

ps aux

ps命令用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。

a:显示当前终端下的所有进程信息,包括其他用户的进程。

u:使用以用户为主的格式输出进程信息。

x:显示当前用户在所有终端下的进程。

 

第二种:

ps -elf

-e:显示系统内的所有进程信息。

-l:使用长(long)格式显示进程信息。

-f:使用完整的(full)格式显示进程信息。

 

ps -ef 与 ps aux 

ps -ef:标准格式显示进程

ps -aux:BSD格式显示进程

 

第三种:

top

以全屏交互式的界面显示进程排名,及时跟踪包括CPU、内存等系统资源占用情况,默认情况下每三秒刷新一次,其作用基本类似于Windows系统中的任务管理器

内容解释:

  • PID:进程的ID
  • USER:进程所有者
  • PR:进程的优先级别,越小越优先被执行
  • NInice:值
  • VIRT:进程占用的虚拟内存
  • RES:进程占用的物理内存
  • SHR:进程使用的共享内存
  • S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
  • %CPU:进程占用CPU的使用率
  • %MEM:进程使用的物理内存和总内存的百分比
  • TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
  • COMMAND:进程启动命令名称

top时常用的命令:

  • P:按%CPU使用率排行
  • T:按TIME+排行
  • M:按%MEM排行

 

二. 查看进程的线程数

2.1  pstree -p 32296  | wc -l

 [F1335883@devops-ci ~]$ pstree -p 32296  | wc -l
45

2.2  top -H -p 32296

linux 查看正在运行得java linux查看正在运行的应用_linux

2.3  直接去“/proc”对应PID的status目录查看

[F1335883@devops-ci ~]$ cat /proc/32296/status
Name:   java
Umask:  0022
State:  S (sleeping)
Tgid:   32296
Ngid:   0
Pid:    32296
PPid:   1
TracerPid:      0
Uid:    1021    1021    1021    1021
Gid:    1021    1021    1021    1021
FDSize: 128
Groups: 992 1021 
VmPeak:  3039868 kB
VmSize:  2948244 kB
VmLck:         4 kB
VmPin:         0 kB
VmHWM:    175976 kB
VmRSS:    112220 kB
RssAnon:          109308 kB
RssFile:            2912 kB
RssShmem:              0 kB
VmData:  2527244 kB
VmStk:       132 kB
VmExe:         4 kB
VmLib:     28860 kB
VmPTE:       780 kB
VmSwap:        0 kB
Threads:        46
SigQ:   0/15074
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000001000
SigCgt: 20000001810044ff
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
CapBnd: 0000001fffffffff
CapAmb: 0000000000000000
NoNewPrivs:     0
Seccomp:        0
Speculation_Store_Bypass:       vulnerable
Cpus_allowed:   3
Cpus_allowed_list:      0-1
Mems_allowed:   00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000001
Mems_allowed_list:      0
voluntary_ctxt_switches:        12
nonvoluntary_ctxt_switches:     99

那么获取内存使用情况

cat /proc/3779/status | grep VmRSS

 

 

参考:

LINUX查看进程的4种方法(小结)

linux查看进程占用cpu、内存、io信息

Linux下查看线程数的几种方法汇总