ps命令手册

小编 2026-07-09 阅读:1143 评论:0
LINFO ps命令   在PS(即,处理状态)命令被用来提供关于当前正在运行的信息的过程,包括...

LINFO 

ps命令

 

 

 

PS(即,处理状态命令被用来提供关于当前正在运行的信息的过程,包括它们的过程标识号(PID)来。

过程也称为任务,是程序的执行(即运行)实例。系统为每个过程分配一个唯一的PID。

ps的基本语法是

ps [options]

当没有任何选项的情况下使用ps时,默认情况下它将发送到标准输出,即显示监视器,该输出显示系统中当前至少两个进程的四项信息:shell和ps。shell是一个程序,它在类Unix 操作系统中提供传统的纯文本用户界面,用于发布命令并与系统交互,并且Linux上默认bashps本身就是一个进程,只要它的输出显示就会死掉(即终止)。

这四个项目分别标记为PID,TTY,TIME和CMD。TIME是进程运行的CPU(中央处理单元)时间(以分钟和秒为单位)的时间量。CMD是启动该过程的命令的名称。

TTY(现在代表终端类型,但最初代表电传打字)是用户登录控制台终端(即,显示器和键盘的组合)的名称,也可以使用tty命令找到。这些信息通常只对多用户网络有用。

使用ps获得有关系统上当前进程的更完整信息的常用方便方法是使用以下命令:

ps -aux | less

 

-a选项告诉ps列出所有用户的进程在系统上,而不是仅仅与当前用户的,与外班组长和不与终端关联的进程。小组负责人是一组相关过程的第一个成员。

 

-u选项告诉ps提供有关每个过程的详细信息。-x选项添加到不具有控制终端列表过程,如守护进程,这是被期间启动程序启动(即,计算机启动),并在后台运行悄悄直到它们由特定的事件或条件激活。

由于进程列表可能相当长,占用的屏幕不止一个,ps -aux的输出可以传送(即传输)到less命令,从而可以一次查看一个屏幕按下空格键可将输出向前推进一个屏幕,按b键则向后推一个屏幕

ps -aux提供的关于每个进程的信息包括进程的用户,PID,进程使用的CPU百分比,进程使用内存百分比,VSZ(虚拟大小以千字节为单位),RSS(实际内存大小或以1024字节为单位的常驻集大小),STAT(进程状态代码),进程的启动时间,进程已激活的时间长度以及启动进程的命令。过程状态代码包括D,不间断睡眠; N,低优先级; R,可运行(在运行队列上); S,睡觉; T,追踪或停止; Z,不存在(僵尸)。

与大多数命令相比,ps之前的连字符是可选的,不是强制性的。因此,以下内容可能(有时候会)用来代替上述命令:

ps aux | less

用于查看系统上运行的所有进程的另一组选项是

ps -ef | less

-e选项生成的有关当前正在运行的每个进程的信息列表。-f选项生成包含的信息较少的项目超过了每个进程的列表-l选项。

在由ps -ef显示的列中,UID包含拥有进程的帐户的用户名(通常是启动进程的同一用户),STIME显示进程启动的时间,或者开始日期超过启动日期24小时前。

ps显示的过程可以限制为属于任何给定用户的过程,方法是通过grep(用于搜索文本过滤器)输出输出例如,属于具有用户名adam的用户的进程可以显示如下:

ps -ef | grep adam

-l选项会生成一个列表,当与-e和-f选项一起使用时,将创建一个包含15列的表:

ps -efl

最感兴趣的附加列是NI和SZ。前者显示过程的良好价值,它决定了过程的优先级。值越高,优先级越低。Linux系统默认的nice值为0。

后者在内存中显示进程的大小。该字段的值是进程占用页数在Linux系统上,一页是4,096字节。

ps通常用于获取故障进程的PID,以便使用kill命令终止它例如,如果发现冻结程序崩溃程序的PID为1125,则通常可以终止该过程:

kill 1125

然后可以使用ps -ef或ps -efl来确认该过程确实已停止。如果没有,那么应该使用更有力的-9选项,即,

kill -9 1125

pstree命令类似PS的,因为它可以用来显示所有系统上的进程与它们的PID一起。然而,它不同之处在于它以树形图表示它的输出,显示进程如何相互关联,并且它提供的关于每个进程的详细信息不如ps。

 

 

 

 

 

2005 
5月20日创建。版权所有©2005 The Linux Information Project。版权所有。

 

一般来说,ps aux命令执行结果的几个列的信息分别是:

USER      进程所属用户
PID          进程ID
%CPU     进程占用CPU百分比
%MEM    进程占用内存百分比
VSZ         虚拟内存占用大小      单位:kb(killobytes)
RSS        实际内存占用大小       单位:kb(killobytes)
TTY         终端类型
STAT      进程状态
START   进程启动时刻
TIME      进程运行时长
COMMAND 启动进程的命令

 

VIRT:virtual memory usage 虚拟内存
1、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据等
2、假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量

RES:resident memory usage 常驻内存
1、进程当前使用的内存大小,但不包括swap out
2、包含其他进程的共享
3、如果申请100m的内存,实际使用10m,它只增长10m,与VIRT相反
4、关于库占用内存的情况,它只统计加载的库文件所占内存大小

SHR:shared memory 共享内存
1、除了自身进程的共享内存,也包括其他进程的共享内存
2、虽然进程只使用了几个共享库的函数,但它包含了整个共享库的大小
3、计算某个进程所占的物理内存大小公式:RES – SHR
4、swap out后,它将会降下来

DATA
1、数据占用的内存。如果top没有显示,按f键可以显示出来。
2、真正的该程序要求的数据空间,是真正在运行中要使用的。

top 运行中可以通过 top 的内部命令对进程的显示方式进行控制。内部命令如下:
s – 改变画面更新频率
l – 关闭或开启第一部分第一行 top 信息的表示
t – 关闭或开启第一部分第二行 Tasks 和第三行 Cpus 信息的表示
m – 关闭或开启第一部分第四行 Mem 和 第五行 Swap 信息的表示
N – 以 PID 的大小的顺序排列表示进程列表
P – 以 CPU 占用率大小的顺序排列进程列表
M – 以内存占用率大小的顺序排列进程列表
h – 显示帮助
n – 设置在进程列表所显示进程的数量
q – 退出 top
s – 改变画面更新周期

序号 列名 含义
a PID 进程id
b PPID 父进程id
c RUSER Real user name
d UID 进程所有者的用户id
e USER 进程所有者的用户名
f GROUP 进程所有者的组名
g TTY 启动进程的终端名。不是从终端启动的进程则显示为 ?
h PR 优先级
i NI nice值。负值表示高优先级,正值表示低优先级
j P 最后使用的CPU,仅在多CPU环境下有意义
k %CPU 上次更新到现在的CPU时间占用百分比
l TIME 进程使用的CPU时间总计,单位秒
m TIME+ 进程使用的CPU时间总计,单位1/100秒
n %MEM 进程使用的物理内存百分比
o VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
p SWAP 进程使用的虚拟内存中,被换出的大小,单位kb。
q RES 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
r CODE 可执行代码占用的物理内存大小,单位kb
s DATA 可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
t SHR 共享内存大小,单位kb
u nFLT 页面错误次数
v nDRT 最后一次写入到现在,被修改过的页面数。
w S 进程状态。(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
x COMMAND 命令名/命令行
y WCHAN 若该进程在睡眠,则显示睡眠中的系统函数名
z Flags 任务标志,参考 sched.h

默认情况下仅显示比较重要的 PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND 列。可以通过下面的快捷键来更改显示内容。

通过 f 键可以选择显示的内容。按 f 键之后会显示列的列表,按 a-z 即可显示或隐藏对应的列,最后按回车键确定。
按 o 键可以改变列的显示顺序。按小写的 a-z 可以将相应的列向右移动,而大写的 A-Z 可以将相应的列向左移动。最后按回车键确定。
按大写的 F 或 O 键,然后按 a-z 可以将进程按照相应的列进行排序。而大写的 R 键可以将当前的排序倒转。

http://blog.chinaunix.net/uid-22858177-id-381533.html

Linux中ps与top命令
这两个命令都是查看系统进程信息的命令,但是用处有点儿不同
1.ps命令–提供系统过去信息的一次性快照
也就是说ps命令能够查看刚刚系统的进程信息  命令:ps aux或者ps lax
[root@Linux ~]# ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.1  0.1   2032   644 ?        Ss   21:55   0:01 init [3]
root         2  0.0  0.0      0     0 ?        S    21:55   0:00 [migration/0]
root         3  0.0  0.0      0     0 ?        SN   21:55   0:00 [ksoftirqd/0]
……
解释如下:
VSZ–进程的虚拟大小
RSS–驻留集的大小,可以理解为内存中页的数量
TTY–控制终端的ID
STAT–也就是当前进程的状态,其中S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等
STRAT–这个很简单,就是该进程启动的时间
TIME–进程已经消耗的CPU时间,注意是消耗CPU的时间
COMMOND–命令的名称和参数
而]#ps lax  可以看到父进程,谦让值以及该进程正在等待的资源等待
2.top命令–这个命令就很有用了
top命令反应的是系统进程动态信息,默认10s更新一次
 
如下例所示:
  $ ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid'  其中rsz是是实际内存
谋胆并重
版权声明

本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。

热门文章
  • Sequential Monte Carlo Methods (SMC) 序列蒙特卡洛/粒子滤波/Bootstrap Filtering

    Sequential Monte Carlo Methods (SMC) 序列蒙特卡洛/粒子滤波/Bootstrap Filtering
    Problem Statement 我们考虑一个具有马尔可夫性质、非线性、非高斯的状态空间模型(State Space Model):对于一个时间序列上的观测结果{yt,t∈N}\\{ y_t , t \\in N \\}{yt​,t∈N},我们认为每个观测结果yty_tyt​的生成依赖于一个无法直接观察的隐变量xt∈{xt,t∈N}x_t \\in \\{x_t , t \\in N \\}xt​∈{xt​,t∈N},即:p(...
  • 机房智能化温湿度解决方式之POE供电以太网温湿度传感器

    机房智能化温湿度解决方式之POE供电以太网温湿度传感器
    机房智能化温湿度解决方式之POE供电以太网温湿度传感器 北京盈创力和电子科技有限公司 智能型TCP网口温湿度记录仪 北京IP网络温湿度记录仪厂家,北京盈创力和 北京智能型TCP网口温湿度记录仪IP网络温湿度记录仪是一种新型的基于TCP/IP协议双绞线以太网标准温湿度采集模块,利用它可以实现现场温度值、相对湿度值的采集,同时利用其自身的RJ45通信接口可以方便地和机房监控主机或交换机集线器进行联网。 工作于-40℃~85℃工业级带...
  • Hive 系统函数及示例

    Hive 系统函数及示例
    查看所有系统函数 show functions; 函数分类 内置函数【系统函数】 数学函数: floor、round、ceil、cos、log2等 字符串函数: length、reverse、trim、lower、get_json_object、repeat等 收集函数: size 转换函数: cast 日期函数: year、month、datediff、date、date_add等 条件函数: coalesce、case…w...
  • CSRF的原理和防范措施

    CSRF的原理和防范措施
    a)攻击原理:i.用户C访问正常网站A时进行登录,浏览器保存A的cookieii.用户C再访问攻击网站B,网站B上有某个隐藏的链接或者图片标签会自动请求网站A的URL地址,例如表单提交,传指定的参数iii.而攻击网站B在访问网站A的时候,浏览器会自动带上网站A的cookieiv.所以网站A在接收到请求之后可判断当前用户是登录状态,所以...
  • HTTP状态保持的原理

    HTTP状态保持的原理
    a)在用户登录之后,浏览器返回响应的时候会在响应中添加上cookieb)浏览器接收到cookie之后会自动保存c)当用户再次请求同一服务器中的其他网页的时候,浏览器会自动带上之前保存的cookied)服务接收到请求之后可以请 request 对象中取到cookie 判断当前用户是否登录  Http是无状态的,就是连接时数据互通,关闭后...
标签列表