ps p 22763  -L -o pcpu,pid,tid,time,tname,cmd,pmem,rss --sort rss  按rss排序

ps p 26653 -L -o pcpu,tid |sort -k1 -r -n|less 按第1列pcpu排序

找到上述进程中,CPU利用率比较高的线程号TID(十进制数),此处为3046

命令:

ps p 3036 -L -o pcpu,pid,tid,time,tname,cmd

将获取的线程号(十进制数)转换成十六进制,此处为0xb46

命令:

printf "%x\n"  3046

查看进程PID为3036中

nid为0xb46的线程信息。

命令:

jstack -l 3036

ps - 按进程消耗内存多少排序

ps -eo rss,pmem,pcpu,vsize,args | sort -k 1 -r -n | less

解析一下:
ps 都知道,是linux,unix显示进程信息的, -e 是显示所有进程, -o是定制显示信息的格式

rss: resident set size, 表示进程占用RAM(内存)的大小,单位是KB
pmem: %M, 占用内存的百分比

pcpu:%C,占用cpu的百分比
vsize: 表示进程占用的虚拟内存的大小,KB
args:进程名(command)

sort命令对ps结果进行排序
-k 1 :按第一个参数(此处为rss)进行排序
-r:逆序
-n:numeric,按数字来排序

ps是Linux下用来查看进程的各种信息的工具,通过ps命令我们可以非常清楚地掌握各个进程所使用的系统资源,及时发现那些资源消耗异常的进程。保障服务器系统的高可用性及稳定性。

系统环境:Debian GNU/Linux 7.7 (wheezy)
pathname:/bin/ps
package:procps

ps命令选项:

简单进程选择:

-A      选择所有进程
-e      选择所有进程,等同于-A

通过清单选择进程(PROCESS SELECTION BY LIST)

-C cmdlist
通过进程的可执行文件的名字来选择进程

输出格式控制:

-l —— 长格式,-y选项和这个一起用时很有用
-o —— 自定义输出格式,后接格式说明符,(格式说明符间用逗号隔开)
-y —— 不显示flags,显示rss来代替addr,这个选项只能和-l选项一起用

输出修改器(OUTPUT MODIFIERS):

--no-headers —— 不打印头部
--sort spec  —— 指定排序次序,默认是按spec(说明符)升序排列(+spec:按spec升序排列;-spec,按spec降序排列)

标准格式说明符:

代码 头部 描述
%mem %MEM 进程占用物理内存的百分比
args COMMAND 输出命令及其全部参数
cmd CMD alias args
comm COMMAND 仅输出可执行文件的名字
command COMMAND alias args
etime ELAPSED 输出进程的运行时间,时间格式如下:[[dd-]hh:]mm:ss(运行时间没有超过一天则不显示dd-,如果运行时间还不到一小时,则显示格式为mm:ss)
euser EUSER 输出进程的执行者的用户名(有时是显示执行者的uid)
lstart STARTED 输出进程启动时刻
pid PID 输出进程的进程号
psr PSR 进程当前被分配的处理器
pmem %MEM alias %mem
rss RSS 物理内存的使用大小(单位为KB)
rssize RSS alias rss
rsz RSZ alias rss
s S 最小状态显示(只显示一个字符)
stat STAT 多字符状态显示(显示更详细的进程状态信息)
state S alias s
uname USER alias euser
user USER alias euser

进程状态代码:
D     不可中断睡眠
R     正在运行或可运行(或者位于运行队列中)
S     可中断睡眠
T      已终止
X      已死(should never be seen)
Z      已故进程,已终止但还未被其父进程回收
<      高优先级(对其它用户不友好)
N      低优先级(对其它用户友好)
L       页面锁定在内存
s       含有子进程(is a session leader)
l        多线程
+       位于前台进程组中

root@godontop:~# ps -eo rss,pid,user,etime,lstart,stat,args --no-headers |sort -k 1 -nr
按第一个参数rss(物理内存)的使用情况从大到小排序

按RSS的大小升序排列
# ps -lyC php5-fpm --sort rss
S   UID   PID  PPID  C PRI  NI   RSS    SZ WCHAN  TTY        TIME CMD
S     0 18303     1  0  80   0   508 10460 -      ?      00:00:03 php5-fpm
S    33 22675 18303  1  80   0 39040 18523 -      ?      00:00:04 php5-fpm
S    33 22676 18303  0  80   0 42576 19404 -      ?      00:00:03 php5-fpm
S    33 22435 18303  0  80   0 47904 20698 -      ?      00:00:19 php5-fpm

备注:当-o选项与--no-headers一起使用时,--no-headers需放在格式说明符的后面

http://godontop.com/linux-ps-command-usage-69/

ps -eLo pid,tid,class,rtprio,ni,pri,psr,pcpu,pmem,stat,wchan:30,comm
-e 显示所有进程
-L 是现实线程信息
-o 表示使用用户定义格式打印信息

tid 表示线程id
pcpu 表示cpu使用率

pmem 参照%cpu
%cpu      %CPU   cpu utilization of the process in "##.#" format. Currently, it is the CPU time used divided by the time the process has been running (cputime/realtime ratio), expressed as a
 percentage. It will not add up to 100% unless you are lucky. (alias pcpu).
pmem 参照%mem
%mem      %MEM   ratio of the process's resident set size  to the physical memory on the machine, expressed as a percentage. (alias pmem).

wchan:30 WCHAN  name of the kernel function in which the process is sleeping, a "-" if the process is running, or a "*" if the process is multi-threaded and ps is not displaying threads.

程序状态字段解释:

D    Uninterruptible sleep (usually IO) 不可中断睡眠
       R    Running or runnable (on run queue) 正在执行或可执行,表示目前在运行队列里面
       S    Interruptible sleep (waiting for an event to complete) 可中断睡眠
       T    Stopped, either by a job control signal or because it is being traced.停止
       W    paging (not valid since the 2.6.xx kernel)
       X    dead (should never be seen)
       Z    Defunct ("zombie") process, terminated but not reaped by its parent.僵尸进程

For BSD formats and when the stat keyword is used, additional characters may be displayed:附加字段
       <    high-priority (not nice to other users) 高优先级
       N    low-priority (nice to other users) 低优先级
       L    has pages locked into memory (for real-time and custom IO)
       s    is a session leader
       l    is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
       +    is in the foreground process group

http://blog.chinaunix.net/uid-21706718-id-3341751.html

ps 专题的更多相关文章

  1. [kuangbin带你飞]专题十 匹配问题

        A-L 二分匹配 M-O 二分图多重匹配 P-Q 二分图最大权匹配 R-S 一般图匹配带花树 模板请自己找     ID Origin Title   61 / 72 Problem A HD ...

  2. docker专题(2):docker常用管理命令(上)

    http://segmentfault.com/a/1190000000751601 本文只记录docker命令在大部分情境下的使用,如果想了解每一个选项的细节,请参考官方文档,这里只作为自己以后的备 ...

  3. X-NUCA 2017 web专题赛训练题 阳光总在风雨后和default wp

     0X0.前言 X-NUCA 2017来了,想起2016 web专题赛,题目都打不开,希望这次主办方能够搞好点吧!还没开赛,依照惯例会有赛前指导,放一些训练题让CTFer们好感受一下题目. 题目有一大 ...

  4. 「mysql优化专题」高可用性、负载均衡的mysql集群解决方案(12)

    一.为什么需要mysql集群? 一个庞大的分布式系统的性能瓶颈中,最脆弱的就是连接.连接有两个,一个是客户端与后端的连接,另一个是后端与数据库的连接.简单如图下两个蓝色框框(其实,这张图是我在悟空问答 ...

  5. 「mysql优化专题」90%程序员面试都用得上的索引优化手册(5)

    目录(技术文) 多关于索引,分为以下几点来讲解: 一.索引的概述(什么是索引,索引的优缺点) 二.索引的基本使用(创建索引) 三.索引的基本原理(面试重点) 四.索引的数据结构(B树,hash) 五. ...

  6. Mac 软件专题之:OS X Yosemite 精彩应用软件推荐

    目前,很多软件都已经发布了针对Yosemite系统的版本,今天和大家分享专题:「OS X Yosemite 精彩应用」,主要分享适配Yosemite系统全新的扁平化界面和新功能的软件,但要知道未在此专 ...

  7. Mac 软件专题:教学参考工具软件-外语/医学/天文/地理/数学等

    今天和大家分享mac软件专题:教学参考工具软件,在这个专题中,主要向大家推荐一些Mac上优秀的教育教学.知识参考类的软件,包含外语.医学.天文.地址.数学.音乐等方面,学生.老师以及相关的工作者不要错 ...

  8. Mac 软件专题:高效率工作和学习工具软件推荐

    今天和大家分享软件专题:「高效率工作和学习工具」,简而言之就是提高你工作和学习效率的软件,这对于要天天使用Mac工作或学习的人来说太有帮助了,这里主要分享大家平时经常用的一些,欢迎留言补充. 本文图片 ...

  9. 逆向知识之CS辅助/外挂专题.2.实现CS1.6无限夜视仪.无限闪光烟雾高爆弹.

    逆向知识之CS辅助/外挂专题.2.实现CS1.6无限夜视仪.无限闪光烟雾高爆弹. 关于人物子弹无限可以观看上一篇博客. 一丶无限夜视仪. 无限夜视仪找法. 1.CE附加游戏. 2.搜索0或者1. 3. ...

随机推荐

  1. 图片拉伸:IOS开发UIImage中stretchableImageWithLeftCapWidth

    意思就是用来创建一个内容可拉伸,而边角不拉伸的图片,需要两个参数,第一个是左边不拉伸区域的宽度,第二个参数是上面不拉伸的高度.那么接下来的一个像素会被拉伸.例如,leftCapHeight为6,top ...

  2. C#中类和结构体的区别

    结构体和类同样能够定义字段,方法和构造函数,都能实例化对象,这样看来结构体和类的功能好像是一样的了,但是他们在数据的存储上是不一样的(以下摘录): C#结构体和类的区别问题:在C#编程语言中,类属于引 ...

  3. 【noip模拟】Fancy Signal Translate (暴力 + 哈希)

    题目描述 FST是一名可怜的 OIer,他很强,但是经常 fst,所以 rating 一直低迷. 但是重点在于,他真的很强!他发明了一种奇特的加密方式,这种加密方式只有OIer才能破解. 这种加密方式 ...

  4. PostThreadMessage发送进程间消息(对话框向控制台发消息,控制台也可有消息循环)

    函数原型 BOOL PostThreadMessage( DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam ); 1 2 3 4 5 6 T ...

  5. 【23.24%】【codeforces 629C】Famil Door and Brackets

    time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...

  6. leetcode先刷_Valid Sudoku

    我没有看到这个问题,这使其在现货需求数独,害怕一直没敢做.后来我发现原来的标题就是这么简单.推断现在只有数字全不符合的就可以了棋盘上的形势的要求. 是不是正确的三个周期..人是不能满意地看到每一行.每 ...

  7. PL/SQL Developer跑在Oracle 64位数据库上初始化错误

    安装完Oracle(64位).PL/SQL Developer后执行PL/SQL出现例如以下的错误: 网上查资料说,我的PL/SQL Developer与ORACLE不兼容,即PL/SQL不支持64位 ...

  8. Fast-tracking approach for building routing topologies in fast-moving networks

    In one embodiment, a local node in a communication network determines a set of its neighbor nodes, a ...

  9. ListView与GridView优化

    前言 ListView是Android中最常用的控件,通过适配器来进行数据适配然后显示出来,而其性能是个很值得研究的话题.本文与你一起探讨Google I/O提供的优化Adapter方案,欢迎大家交流 ...

  10. Java踩坑之路

    陆陆续续学Java也快一年多了,从开始的一窍不通到现在的初窥门径,我努力过,迷茫过,痛过,乐过,反思过,沉淀过.趁着新年,我希望能把这些东西记下来,就当是我一路走来的脚印. 一.初识网站应用 记得第一 ...