ps aux 是用BSD的格式来显示 java这个进程
显示的项目有:USER , PID , %CPU , %MEM , VSZ , RSS , TTY , STAT , START , TIME , COMMAND ps -ef 是用标准的格式显示java这个进程 显示的项目有:UID , PID , PPID , C , STIME , TTY , TIME , CMD 两者的输出结果差别不大,但展示风格不同。aux是BSD风格,-ef是System V风格。这是次要的区别,一个影响使用的区别是aux会截断command列,而-ef不会。当结合grep时这种区别会影响到结果。 TTY //该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程。 %MEM //占用内存的百分比 VSZ //该进程使用的虚拟內存量(KB) RSS //该进程占用的固定內存量(KB)(驻留中页的数量) 其中STAT状态位常见的状态字符有《《《最常见的有5种》》》 D //无法中断的休眠状态(通常 IO 的进程); R //正在运行可中在队列中可过行的; S //处于休眠状态; T //停止或被追踪; Z //僵尸进程;< //优先级高的进程
N //优先级较低的进程 L //有些页被锁进内存;l //多线程,克隆线程(使用 CLONE_THREAD, 类似 NPTL pthreads);
s //进程的领导者(在它之下有子进程);
+ //位于后台的进程组;
ps aux | grep '...' 主要可以看到 mem的信息及进程的状态。。。
ps -ef | grep 'tomcat'
ps -ef | grep pid ---》查看所有关联的子进程如果想查看进程的CPU占用率和内存占用率,可以使用aux
如果想查看进程的父进程ID和完整的COMMAND命令,可以使用ef ps 为我们提供了进程的一次性的查看,它所提供的查看结果并不动态连续的;如果想对进程时间监控,应该用 top 工具。