一.查看进程命令ps

  1.1 默认ps 命令
    

    在默认情况下,ps命令只会显示运行在当前控制台下,属于当前用户的进程,在上图中,我们只运行了bash shell以及ps命令本身。 上图中显示了程序的进程ID(1538,1583),它们运行在TTY终端, 以及进程已有的CPU(TIME)时间。

  1.2 ps 风格以及参数
    在linux系统中使用的GNU ps命令支持3种不同类型的命令行参数。包括Unix风格的参数,BSD风格的参数,GNU风格的长参数。

二.  Unix风格参数

  在ps中每种风格的参数都很多,下面例举一些常用的Unix风格的ps命令参数。下面表格还有很多参数没有列出来。

参数

描述

-A

显示所有进程

-N

显示与指定参数不符的所有进程

-a

显示除控制进程和无终端进程外的所有进程

-d

显示除控制进程外的所有进程

-e

显示所有进程

-C  cmdlist

显示包含在cmdlist列表中的进程

-f

显示完整格式的输出

-l

显示长列表

  2.1 ps  –ef 参数组合命令   

    多数linux系统管理员都有自己的一组参数,来提取有用的进程信息。例如可用-ef 参数组合,如下图所示:
    

    在上面的列表中,输出的信息包括:UID列是指启动这些进程的用户。PID列是指进程ID。 PPID列是指:父进程ID(该进程是由另一个进程启动的)。 C列是指进程生命周期中的CUP利用率。 STIME列是指进程启动时的系统时间。TTY列是指进程启动时的终端设备。TIME列是指运行进程需要的累计CPU时间。CMD列是指启动的程序名称。  

  2.2 ps –l  长列表

    如果想要获取更多的信息,可以采用-l参数,它会产生一个长格式的输出,如下图所示:
    

    上面的列表中,输出的信息包括:F列是指内核分配给进程的系统标记。S 是指进程状态(O是正在运行。S是休眠。R是可运行,正等待运行。Z是僵化,进程已结束但父进程已不存在,T是停止) 。 PRT列是指进程的优先级(越大数字表越低的优先级)。 NT列是指谦让度值,用来参与决定优先级。 ADDR列是指进程的内存地址。 SZ列是指假如进程被换出,所需的交换空间在大致大小。 WCHAN列是指进程休眠的内核函数的地址。

  2.3 ps –ef|grep xx  查找进程

    命令grep是查找, 中间 | 是管道命令,代表ps与grep同时执行。grep是一种强大的文本搜索工具,它能使用正则搜索文件,并把匹配的行打印出来。下面是匹配与nginx字符有关的进程, 用grep过滤后进程信息列名也屏蔽了。

    

    下面命令加了l 长列表显示。
    

    上图第二列值是S,代表当前nginx进程是休眠状态,第三列uid是属于hsr用户。

三. BSD  风格参数

    BSD风格参数的ps命令参数常用如下(其它很多未列出)

参数

描述

r

仅显示运行中的进程

T

显示与当前终端关联的所有进程

a

显示与任意终端关联的所有进程

g

显示所有的进程,包括控制进程

l

采用长模式

    使用BSD参数时,ps命令会自动改变输出以模仿Unix格式。例如:使用参数l输出:
    

    上图中列输出与Unix风格输出大部份是一样的。只有小部份不同包括 VSZ是指进程在内存中的大小,以KB单位。 RSS是指进程在未换出时占用的物理内存。 STAT:代表当前进程状态的双字符状态码。

在STAT双字符状态码中,第一个字符与Unix的S列值一样。后一个字符代表如下:

  <: 该进程运行在高优先级上。

  N:该进程运行在低优先级上。

  L:该进程有页面锁定在内存中。

  s:  该进程是控制进程。

  l:  该进程是多线程的。

  +: 该进程运行在前台。

可以看出bash命令处于休眠状态。是一个控制进程。 Ps是运行在系统的前台。

四.  GNU风格长参数

    GNU长参数风格的ps命令参数常用如下(其它很多未列出)

--deselect

显示所有进程,命令行中列出的进程

--forest

层级结构显示出进程与父进程之间的关系

     例如使用组合参数输出。如下图所示:
    
    例如与其Unix风格组合参数输出。如下图所示:
    

Linux编程 6 (查看进程 ps 及输出风格)的更多相关文章

  1. Linux下查看进程的命令输出的内容解释

    Linux下查看进程的命令输出的内容解释 ps (process status) ps -e 或者ps -A (-e和-A完全一样) PID           TTY         TIME   ...

  2. 浅谈Linux系统中如何查看进程 ——ps,pstree,top,w,全解

    进程是一个其中运行着一个或多个线程的地址空间和这些线程所需要的系统资源.一般来说,Linux系统会在进程之间共享程序代码和系统函数库,所以在任何时刻内存中都只有代码的一份拷贝. 1,ps命令 作用:p ...

  3. linux(6)查看进程ps命令

    ps命令 Linux ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器 查看所有进程 ps -A 显示所有进程信息,连同命令行 ps - ...

  4. Linux常用命令 查看进程信息时 copy的-----温故而知新

    1.查进程    ps命令查找与进程相关的PID号:    ps a 显示现行终端机下的所有程序,包括其他用户的程序.    ps -A 显示所有程序.    ps c 列出程序时,显示每个程序真正的 ...

  5. shell学习五十天----查看进程ps命令

    进程列表 列出进程中最重要的命令便是进程状态命令:ps. ps命令是进程状态(Process Status)的缩写.ps命令用来列出系统中当前执行的那些进程.ps命令列出的是当前那些进程的快照,就是执 ...

  6. linux lsof/netstat查看进程和端口号相关命令:

    本文为博主原创,未经允许不得转载: 在linux操作时,经常要查看运行的项目的进程和端口号,在这里总结了以下常用到的相关命令: 1.查看系统运行的java项目,并查看进程号 这个用到的命令为: ps ...

  7. Linux基础命令——查看进程命令

    linux是一个 多进程   多用户的操作系统 ps(显示当前进程的状态) ps -ef  查看当前linux 进程 ps -ef | grep 'mysqld'  过滤mysql的进程 (grep  ...

  8. Linux根据端口查看进程

    若不知道具体目录,可以根据端口查找,查看端口22000的信息: sudo lsof -i:22000 RelaySvr 4322 root   13u  IPv4 75680495      0t0  ...

  9. 【linux】如何查看进程运行在那颗cpu上

    这里介绍一种方法查看进程运行在哪个cpu上, 首先top 然后按字母:f 按字母:j 回车即可 其中P列表示进程运行在哪个CPU上

随机推荐

  1. ACM-ICPC 2018 南京赛区网络预赛 J.sum(欧拉筛)

    题目来源:https://nanti.jisuanke.com/t/A1956 题意:找一个数拆成无平方因子的组合数,然后求前缀和. 解题思路:我们可以把某个数分解质因数,如果某个数可以分解出三个相同 ...

  2. F4 help for month

    INCLUDE rmcs0f0m. s_month FOR s001-spmon NO-EXTENSION NO INTERVALS OBLIGATORY. AT SELECTION-SCREEN O ...

  3. python 之字符编码

    一    了解字符编码的储备知识 python解释器和文件本编辑的异同      相同点:python解释器是解释执行文件内容的,因而python解释器具备读py文件的功能,这一点与文本编辑器一样 不 ...

  4. 201621123002《JAVA程序设计》第二周学习总结

    1.本周学习总结 1.重点String类 2.Java的数据类型 3.Java中的引用类,包装类 for(类型 元素变量名(任取):遍历对象(数组名)) 2.书面作业 1.String-使用Eclip ...

  5. [IBM][CLI Driver] SQL0270N 函数不受支持(原因码:"75")。 SQLSTATE=42997

    db2 update dbm cfg  using FEDERATED  yes 与 自动维护 (AUTO_MAINT) = ON 自动数据库备份 (AUTO_DB_BACKUP) = OFF 自动表 ...

  6. Unittest中TestCase类中定义的几个特殊方法

    1.setUp():每个测试方法运行前运行,测试前的初始化工作: 2.tearDown():每个测试方法运行结束后运行,测试后的清理工作: 3.setUpClass():所有的测试方法运行前运行,单元 ...

  7. ABP框架系列之十二:(Audit-Logging-审计日志)

    Introduction Wikipedia: "An audit trail (also called audit log) is a security-relevant chronolo ...

  8. centos 7下 django 1.11 + nginx 1.12 + uwsgi 2.0

    之前写过一个博客关于如何安装django的,见下网址, http://www.cnblogs.com/qinhan/p/8732626.html 还有一个网址如何安装nginx的 http://www ...

  9. Android系统的镜像文件的打包过程

    在前面一篇文章中,我们分析了Android模块的编译过程.当Android系统的所有模块都编译好之后,我们就可以对编译出来的模块文件进行打包了.打包结果是获得一系列的镜像文件,例如system.img ...

  10. PowerShell工作流学习-2-工作流运行Powershell命令

    关键点: a)inlineScript 活动具有活动通用参数,但不具有PowerShell 通用参数,且inlineScript 脚本块中的命令和表达式不具有工作流的功能b)默认inlineScrip ...