最近在看linux优化大师这本书,第2章祥细讲解了分析系统用的工具,这里把一些内容整理出来,以便加深印像。

当进行系统分析时,ps命令显示有关选择的活跃进程的信息。ps命令提供当前已存在的进程列表,和top命令相比,ps命令可以静态方式提供更祥细的信息。

ps有3种不同类型的命令选项:

  1. UNIX选项,可以组合起来,必须在前面加一个连字符“-”
  2. BSD选项,可以组合起来,不能使用连字符“-”
  3. GNU长选项,在前面有2个连字符“--"

以centos为例,见下图:

ps -ef 可列出所有的进程。

ps aux 这里的PID对进一步操作很重要,如果使用pmap或renice工具,PID的号码是必需的,使用BSD风格的选项将增加一个进程状态(stat=STAT)显示,并显示命令参数(args=COMMAND)来取代可执行文件的名称。

使用BSD风格的选项还可以改变进程选择,包括在其他终端(TTY)中拥有的进程。此外,还可以设置在所有进程中过虑,以排除其他用户所拥有的进程或没有在一个终端上的进程。例如:使用用户自定义的格式查看每个进程:

如果仅显示sshd则可以键入 ps -C sshd:

还可以查看HTTPD进程的ID,  ps -C httpd -o pid=

如果要查看线程信息,则可以键入:ps aux |grep httpd   ps -L pid(进程ID)

最后来逻列一下 ps命令的一些选项参数吧:


一. 进程选择。

-A

选择所有进程 与 -e相同

-N

选择除满足指定条件以外的所有进程。(否定选择)与--deselect相同

T

选择与该终端相关的所有进程。与不带任何参数的t选项相同

-a

选择除session leader 以外的进程和与该终端不相关的所有进程

a

这个选项列出使用该终端(tty)的所有进程,或当与x选项一起使用时列出所有进程

-d

选择除session leader 以外的所有进程

-e

选择所有进程,与-A相同

r

限制只选择正在运行的进程

X

列出所有进程

--deselect

与-N相同

二.Ps 命令可以使用这些选项来选择要显示的信息。输出控制如下:

-F

额外的全格式。参见-f选项

-O format

类似于-o,但是预加载了一些默认列。与-o pid,format,state,tname,time,command或-o pid,format,tname,time,cmd相同,参见-o

-M

添加安全性数据列,与Z相同(SELINUX)

X

寄存器的格式

Z

与-M相同

-c

为-l选项显示不同的调度信息

-f

全格式的列表。与-L一起使用时,添加NLWP(线程数量)和LWP(线程ID)列

j

BSD job控制格式。

-j

Job格式

l

显示BSD长格式

-l

长格式,-y选项通常对此选项有用

O format

指定用户定义的格式

-o format

用户定义的格式。

s

显示信号格式

u

显示面向用户的格式

v

显示虚拟内存格式

-y

不显示选项;显示rss地址位,这个选项只能与-l一起使用

-Z

显示安全上下文格式(selinux)

--format format

用户定义的格式,与-o和o相同

--context

显示安全上下文格式(selinux)

   

三.线程显示

H

显示线程

-L

显示线程可能使用LWP NLWP列

-T

显示线程可能使用SPID列

M

在进程之后显示线程

-m

在进程之后显示线程

四.进程状态码

D

不可中断的睡眠

S

可中断的睡眠

R

运行中的进程

T

已停止,通过一个job控制信号或因为它正在被跟踪

Z

已消亡的进程

X

死亡(永远不会看到)

W

分页

<

高优先级

N

低优先级

L

在内存中锁定分页

s

Session leader

l

多线程

+

在前台进程组中

ps命令学习笔记的更多相关文章

  1. linux基础命令学习笔记(二)

    linux基础命令学习笔记(二) 1.kill :终止进程  kill pid (唯一标示一个进程) kill -9  强制终止  kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...

  2. Linux命令学习笔记目录

    Linux命令学习笔记目录 最近正在使用,linux,顺便将用到的命令整理了一下. 一. 文件目录操作命令: 0.linux命令学习笔记(0):man 命令 1.linux命令学习笔记(1):ls命令 ...

  3. TCP/IP协议学习之实例ping命令学习笔记

    TCP/IP协议学习之实例ping命令学习笔记(一) 一. 目的为了让网络协议学习更有效果,在真实网络上进行ping命令前相关知识的学习,暂时不管DNS,在内网中,进行2台主机间的ping命令的整个详 ...

  4. 【Redis数据库】命令学习笔记——发布订阅、事务、脚本、连接等命令汇总

    本篇基于redis 4.0.11版本,学习发布订阅.事务.脚本.连接的相关命令. Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息. 序号 ...

  5. 【Redis】命令学习笔记——列表(list)+集合(set)+有序集合(sorted set)(17+15+20个超全字典版)

    本篇基于redis 4.0.11版本,学习列表(list)和集合(set)和有序集合(sorted set)相关命令. 列表按照插入顺序排序,可重复,可以添加一个元素到列表的头部(左边)或者尾部(右边 ...

  6. 【Redis】命令学习笔记——哈希(hash)(15个超全字典版)

    本篇基于redis 4.0.11版本,学习哈希(hash)相关命令. hash 是一个string类型的field和value的映射表,特别适合用于存储对象. 序号 命令 描述 实例 返回 HSET ...

  7. 【Redis】命令学习笔记——字符串(String)(23个超全字典版)

    Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). 本篇基于redis 4.0.11版本,学习字符串( ...

  8. 【Redis】命令学习笔记——键(key)(20个超全字典版)

    安装完redis和redis-desktop-manager后,开始学习命令啦!本篇基于redis 4.0.11版本,从对键(key)开始挖坑! 准备工作,使用db1(默认db0,由于之前练习用db0 ...

  9. mongodb常用命令学习笔记

    mongodb常用命令学习笔记 创建数据库 use DATABASE_NAME eg: use users; 如果数据库不存在,则创建数据库,否则切换到指定数据库.要显示刚刚创建的数据库,需要向数据库 ...

随机推荐

  1. 如何打一个FatJar(uber-jar)

    如何打一个FatJar(uber-jar) FatJar也就叫做UberJar,是一种可执行的Jar包(Executable Jar).FatJar和普通的jar不同在于它包含了依赖的jar包. 1. ...

  2. mxnet:结合R与GPU加速深度学习(转)

    近年来,深度学习可谓是机器学习方向的明星概念,不同的模型分别在图像处理与自然语言处理等任务中取得了前所未有的好成绩.在实际的应用中,大家除了关心模型的准确度,还常常希望能比较快速地完成模型的训练.一个 ...

  3. CodeForces 544C (Writing Code)(dp,完全背包)

    题意:有n个程序员,要协作写完m行代码,最多出现b个bug,第i个程序员每写一行代码就会产生a[i]个bug,现在问,这n个人合作来写完这m行代码,有几种方案使得出的bug总数不超过b(题中要求总方案 ...

  4. javascript基础-语法

    代表此属性ECMAScript 5(一般IE9+)才支持. 图解:—— 图解: undefined,null,NaN Infinity ECMAScript 5禁止修改 每个函数都是Function的 ...

  5. SQLalchemy模块用法

    安装 pip install sqlalchemy #!/usr/bin/env python # -*- coding:utf-8 -*- # 加载模块 from sqlalchemy.ext.de ...

  6. 安装JDK,配置环境变量有感

    前天无事,心血来潮给公司新配的笔记本(win10系统64位)装开发工具,然后不可避免的就装了JDK,顺理成章的需要配置环境变量,结果就出问题了. 配置完成,测试时,在dos命令窗口输入java命令执行 ...

  7. 《学习OpenCV3》第7章第4题-SVD奇异值分解的验算

    原文题目: 中文翻译:   解题过程 d.使用OpenCV编写代码 , ,               , ,               ,);     Mat A = static_cast< ...

  8. 正确地缩写 document.querySelector

    北京的夕阳,伴随淡淡的霾殇.从写字楼望去,光线是那么昏黄.没有孤雁,也没有霞光,遥想当年,还是 jQuery 独霸一方.那时的我们,写程序都习惯了使用 $,至少在对美元符号的喜爱上,与 PHP 达成了 ...

  9. LeetCode 206 单链表翻转

    https://leetcode.com/problems/reverse-linked-list/ 思路很简单,分别设置三个结点,之后依次调整结点1和结点2的指向关系. Before: pre -& ...

  10. docker 汇总

    整理中 ... 一. docker 基础 配置参数最佳实践 二. docker 编排工具 docker swarm mesos kubernetes AWS ECS 三. docker 生态 dock ...