ps命令解析

2023-11-04

ps命令用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等,总之大部分信息都是可以通过执行该命令得到的。
备注:ps是显示瞬间进程的状态,并不动态连续;如果想对进程进行实时监控应该用top命令。

语法
ps(选项)
选项
-a:显示所有终端机下执行的程序,除了阶段作业领导者之外。
a:显示现行终端机下的所有程序,包括其他用户的程序。
-A:显示所有程序。
-c:显示CLS和PRI栏位。
c:列出程序时,显示每个程序真正的指令名称,而不包含路径,选项或常驻服务的标示。
-C<指令名称>:指定执行指令的名称,并列出该指令的程序的状况。
-d:显示所有程序,但不包括阶段作业领导者的程序。
-e:此选项的效果和指定"A"选项相同。
e:列出程序时,显示每个程序所使用的环境变量。
-f:显示UID,PPIP,C与STIME栏位。
f:用ASCII字符显示树状结构,表达程序间的相互关系。
-g<群组名称>:此选项的效果和指定"-G"选项相同,当亦能使用阶段作业领导者的名称来指定。
g:显示现行终端机下的所有程序,包括群组领导者的程序。
-G<群组识别码>:列出属于该群组的程序的状况,也可使用群组名称来指定。
h:不显示标题列。
-H:显示树状结构,表示程序间的相互关系。
-j或j:采用工作控制的格式显示程序状况。
-l或l:采用详细的格式来显示程序状况。
L:列出栏位的相关信息。
-m或m:显示所有的执行绪。
n:以数字来表示USER和WCHAN栏位。
-N:显示所有的程序,除了执行ps指令终端机下的程序之外。
-p<程序识别码>:指定程序识别码,并列出该程序的状况。
p<程序识别码>:此选项的效果和指定"-p"选项相同,只在列表格式方面稍有差异。
r:只列出现行终端机正在执行中的程序。
-s<阶段作业>:指定阶段作业的程序识别码,并列出隶属该阶段作业的程序的状况。
s:采用程序信号的格式显示程序状况。
S:列出程序时,包括已中断的子程序资料。
-t<终端机编号>:指定终端机编号,并列出属于该终端机的程序的状况。
t<终端机编号>:此选项的效果和指定"-t"选项相同,只在列表格式方面稍有差异。
-T:显示现行终端机下的所有程序。
-u<用户识别码>:此选项的效果和指定"-U"选项相同。
u:以用户为主的格式来显示程序状况。
-U<用户识别码>:列出属于该用户的程序的状况,也可使用用户名称来指定。
U<用户名称>:列出属于该用户的程序的状况。
v:采用虚拟内存的格式显示程序状况。
-V或V:显示版本信息。
-w或w:采用宽阔的格式来显示程序状况。 
x:显示所有程序,不以终端机来区分。
X:采用旧式的Linux i386登陆格式显示程序状况。
-y:配合选项"-l"使用时,不显示F(flag)栏位,并以RSS栏位取代ADDR栏位 。
-<程序识别码>:此选项的效果和指定"p"选项相同。
--cols<每列字符数>:设置每列的最大字符数。
--columns<每列字符数>:此选项的效果和指定"--cols"选项相同。
--cumulative:此选项的效果和指定"S"选项相同。
--deselect:此选项的效果和指定"-N"选项相同。
--forest:此选项的效果和指定"f"选项相同。
--headers:重复显示标题列。
--help:在线帮助。
--info:显示排错信息。
--lines<显示列数>:设置显示画面的列数。
--no-headers:此选项的效果和指定"h"选项相同,只在列表格式方面稍有差异。
--group<群组名称>:此选项的效果和指定"-G"选项相同。
--Group<群组识别码>:此选项的效果和指定"-G"选项相同。
--pid<程序识别码>:此选项的效果和指定"-p"选项相同。
--rows<显示列数>:此选项的效果和指定"--lines"选项相同。
--sid<阶段作业>:此选项的效果和指定"-s"选项相同。
--tty<终端机编号>:此选项的效果和指定"-t"选项相同。
--user<用户名称>:此选项的效果和指定"-U"选项相同。
--User<用户识别码>:此选项的效果和指定"-U"选项相同。
--version:此选项的效果和指定"-V"选项相同。
--widty<每列字符数>:此选项的效果和指定"-cols"选项相同。


常用的组合ps -aux 和ps -ef,两者的作用类似,显示的格式有所不同

例1:将目前属于您自己这次登入的 PID 与相关信息列示出来 
这里写图片描述

各相关信息的意义为: 
F 代表这个程序的旗标 (flag), 4 代表使用者为 superuser; 
S 代表这个程序的状态 (STAT); 
UID 代表执行者身份 
PID 进程的ID号!底下的 PPID 则父进程的ID; 
C CPU 使用的资源百分比 
PRI指进程的执行优先权(Priority的简写),其值越小越早被执行; 
NI 这个进程的nice值,其表示进程可被执行的优先级的修正数值。 
ADDR 这个是内核函数,指出该程序在内存的那个部分。如果是个执行 的程序,一般就是『 - 』 
SZ 使用掉的内存大小; 
WCHAN 目前这个程序是否正在运作当中,若为 - 表示正在运作; 
TTY 登入者的终端机位置啰; 
TIME 使用掉的 CPU 时间。 
CMD 所下达的指令名称

例2:列出目前所有的正在内存当中的程序 
这里写图片描述

• USER:该进程属于那个使用者账号的? 
• PID :该进程的进程ID号。 
• %CPU:该进程使用掉的 CPU 资源百分比; 
• %MEM:该进程所占用的物理内存百分比; 
• VSZ :该进程使用掉的虚拟内存量 (Kbytes) 
• RSS :该进程占用的固定的内存量 (Kbytes) 
• TTY :该进程是在那个终端机上面运作,若与终端机无关,则显示 ?,另外, tty1-tty6 是本机上面的登入者程序,若为 pts/0 等等的,则表示为由网络连接进主机的程序。 
• STAT:该程序目前的状态,主要的状态有: 
R :该程序目前正在运作,或者是可被运作; 
S :该程序目前正在睡眠当中 (可说是 idle 状态啦!),但可被某些讯号(signal) 唤醒。 
T :该程序目前正在侦测或者是停止了; 
Z :该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态 
• START:该进程被触发启动的时间; 
• TIME :该进程实际使用 CPU 运作的时间。 
• COMMAND:该程序的实际指令为什么?

 

 

 

参考:
https://blog.csdn.net/u011641865/article/details/71435510
http://man.linuxde.net/ps
 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ps命令解析 的相关文章

  • Linux 从设备本身运行的脚本卸载设备

    我在路径中安装了一个 iso 映像 mnt iso 在这个 iso 中我有一个安装脚本 install sh 我从 iso 运行安装脚本 最后脚本询问用户是否要卸载 iso 本身 如果用户按 y 脚本将执行以下代码 cd umount mn
  • 编写健壮的 shell 脚本有哪些规则?

    I recently erased part of my home directory with a shell script I wrote Fortunately I did hit Ctrl C fast enough to avoi
  • MongoDB - 编辑器变量 - MongoDB shell - Windows 7

    EDITOR 变量功能真的可以在 Windows 7 上使用吗 我正在读一篇文章 说一旦我们设置了 EDITOR 变量在 mongorc js 中 我们只需在 shell 中输入 编辑变量名 and var name将被加载到编辑器中 在我
  • 如何使用 echo 命令写入并附加到文件

    我正在尝试编写一个脚本 它将使用 echo 并写入 附加到文件 但我的语法中已经有了 字符串 说 echo I am Finding difficult to write this to file gt file txt echo I ca
  • 如果文件没有行尾字符,则 wc -l 不计算文件的最后一个

    我需要计算 unix 文件的所有行数 该文件有 3 行 但是wc l仅给出 2 个计数 我知道它不计算最后一行 因为它没有行尾字符 任何人都可以告诉我如何计算这一行吗 grep c返回匹配行的数量 只需使用一个空字符串 作为您的匹配表达式
  • 如何从脚本编辑 /etc/sudoers?

    我需要编辑 etc sudoers从脚本中添加 删除白名单中的内容 假设我有一个可以处理普通文件的命令 我如何将其应用到 etc sudoers 我可以复制并修改它 然后有visudo用修改后的副本替换原始版本 通过提供我自己的脚本 EDI
  • python等待shell命令完成

    我正在运行脚本来解压缩一些文件 然后删除 rar 文件 我通过 shell 运行命令来完成此操作 我尝试了几种不同的方法来让脚本等待文件解压完成 但它仍然继续并在文件使用完成之前删除文件 我已经尝试过下面的代码 这是行不通的 我试图看看是否
  • 在Java中执行.lnk文件

    我需要在java中执行 lnk文件 指向exe文件的lnk文件 我能怎么做 在 VB net 中我做 Process Start path 它有效 谢谢你的帮助 Use a 流程构建器 http download oracle com ja
  • Linux shell 从用户输入中获取设备 ID

    我正在为一个程序编写安装脚本 该程序需要在其配置中使用 lsusb 的设备 ID 因此我正在考虑执行以下操作 usblist lsusb put the list into a array for each line use the arr
  • 如何并行执行4个shell脚本,我不能使用GNU并行?

    我有4个shell脚本dog sh bird sh cow sh和fox sh 每个文件使用 xargs 并行执行 4 个 wget 来派生一个单独的进程 现在我希望这些脚本本身能够并行执行 由于某些我不知道的可移植性原因 我无法使用 GN
  • Python 脚本:每次打印新行到 shell,而不是更新现有行

    说到Python 我是个菜鸟 我有一个 python 脚本 它给我这样的输出 last ZVZX W3vo9I Downloading video webpage last ZVZX W3vo9I Extracting video info
  • 如何从 LaTeX 执行 shell 脚本?

    我正在尝试在 LaTeX 中执行以下操作 documentclass article begin document execute usr local bin my shell script sh end document 想法是执行 us
  • 检查帐号是否为数字时出现语法错误

    if account nr 0 9 from account nr 0 9 这是为了检查帐号是否为数字 我收到语法错误 这个问题的早期版本缺少之间的空格if and 实际代码具有所需的空间 它显示以下错误消息 syntax error ac
  • 如何正确使用fork、exec、wait

    我正在编写的 shell 需要执行用户提供给它的程序 这是我的程序的非常简短的简化版本 int main pid t pid getpid this is the parents pid char user input NULL size
  • 如何设置 tmux 在启动时打开指定的窗口?

    如何设置 tmux 使其在启动时打开指定的窗口 您可以编写一个小 shell 脚本来启动 tmux 以及所需的程序 我在一个名为 dev tmux 的 shell 脚本中包含以下内容 开发环境 bin sh tmux new session
  • 检查 Git 中是否需要 pull

    如何检查远程存储库是否已更改并且需要拉取 现在我使用这个简单的脚本 git pull dry run grep q v Already up to date changed 1 但它比较重 有没有更好的办法 理想的解决方案是检查所有远程分支
  • 如何使用 UNIX shell 脚本删除平面文件的页眉和页脚记录?

    我有一个平面文件 如下所示 如何使用 UNIX shell 脚本从文件中删除页眉和页脚并重写同一文件 9 20050427 HEADER RECORD 0000000 00000 000000000 123456 00 654321 DAT
  • 在 macOS 上使用 find 时出现“非法选项”错误

    我试图列出末尾仅带有字母 R 的文件 我用了find在 macOS 终端中如下所示 find type f name R 但我收到消息说illegal option t 第一个参数find是它应该开始寻找的路径 路径 表示当前目录 find
  • 等待子进程使用 os.system

    我用了很多os system在 for 循环内调用创建后台进程 如何等待所有后台进程结束 os wait告诉我没有子进程 ps 我使用的是Solaris 这是我的代码 usr bin python import subprocess imp
  • 测试 bash shell 脚本[重复]

    这个问题在这里已经有答案了 有人可以解释一下如何测试 bash shell 脚本吗 例如 我有一个 sh 文件 其中包含此代码 bin sh for file in txt do mv file basename file txt doc

随机推荐

  • 【jdk1.8特性】之Function

    笔者日常 来吧 Function 相关声明 本文按照以下顺序进行说明并给出简单的使用示例 序号 接口 1 Function
  • 【Redis笔记】发布与订阅

    Redis发布与订阅功能由PUBLISH SUBSCRIBE PSUBSCRIBE等命令组成 SUBSCRIBE命令 客户端可以订阅一个或多个频道 从而成为这些频道的订阅者 subscriber 每当有其他客户端向被订阅的频道发送消息时 频
  • 未来十年互联网十大发展趋势

    世界已被互联网占领 互联网未来10年将如何变化与发展 1 互联网全球普及 根据国际电信联盟最近统计 全球互联网用户总数已经达到20亿人 而联合国公布的最新统计数字显示 世界人口在2011年底突破70亿大关 所以到2020年毫无疑问会有更多的
  • Ubuntu下各种压缩与解压的操作

    这篇文章主要给大家介绍了在Ubuntu系统下各种压缩与解压的操作 其中包括 tar gz bz2 bz Z tgz zip rar以及 lha等各个的解压与压缩方法 每一种都给出了示例代码 需要的朋友可以参考学习 一起来看看吧 一 tar
  • vue项目中高德地图根据城市名定位到城市中心位置,并在该位置做标记

    先看效果 首先记得引入高德地图 并且要带上 plugin AMap DistrictSearch 如下
  • 加密方式

    目录 MD5和RSA 1 MD5 a MD5简介 MD5一种不可逆的加密算法 什么意思呢 网站一般会保存用户密码 为了不让数据库管理员看到用户的密码 你输入的密码是这样的 12345 网站加密后的密码可能是这样的 E10ADC3949BA5
  • 缓存穿透,缓存雪崩的四种解决方案

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 前言 设计一个缓存系统 不得不要考虑的问题就是 缓存穿透 缓存击穿与失效时的雪崩效应 缓存穿透 缓存穿透是指查询一个一定不存在的数据 由于缓存是不命中时被动写的 并且出于容
  • [管理与领导-60]:IT基层管理者 - 扩展技能 - 3 - 通过面试招到合适的人选

    目录 前言 一 招聘 1 1 什么是招聘 1 2 招聘 VS 招募 1 3 甄选 1 4 招聘中的重要原则 1 5 招聘的本质 1 6 人才匹配的维度 1 7 人员招聘中的误区 二 面试 2 1 何为面试 2 2 为什么面试 2 3 面试的
  • PRESENT加密算法(c++实现)

    简介 PRESENT加密算法在2007 年由来自德国波鸿鲁尔大学的 Bogdanov 在 CHES 会议中发表 PRESENT加密算法为一种轻量级分组密码算法 采用了 置换网络 SPN 结构 一共迭代 31 轮 分块 组 长度为 64 比特
  • 局域网可用IP网段

    C类局域网专用网段 192 168 0 1 192 168 255 254 很多公司网吧都是用这个网段 hoho B类局域网专用网段 172 16 0 1 172 31 255 254 A类局域网专用网段 10 0 0 1 10 255 2
  • 工作3周年小记

    时间荏苒 入职那天的情景还历历在目 却不经意的成为了组里的老员工 一直渴望着静好的岁月 不曾想 过去的岁月这般忙碌 匆匆 似乎没有留下太多彩色的记忆 蓦然回首 做了很多项目 看到各种同事的来去 也经历了组里的盛衰 内心没有波澜 只是遗憾没有
  • chatgpt赋能python:Python编译成pyd文件是什么?如何提高SEO排名?

    Python编译成pyd文件是什么 如何提高SEO排名 Python是一种非常强大的编程语言 它非常适合用于开发各种不同类型的应用程序 然而 Python虽然易于学习和使用 但是由于它的解释性质 它的运行速度相对较慢 在某些情况下 这可能会
  • docker 覆盖 entrypoint_跟我一起学docker(八)--Dockerfile

    1 利用Dockerfile创建镜像 什么是Dockerfile 定义 Dockerfile是一个文本格式的配置文件 用户可以使用Dockerfile快速创建自定义镜像 基本结构 Dockerfile由一行行的命令语句组成 并且支持以 开头
  • 一文解读Vision Transformer(ViT)

    前言 Vision Transformer 论文 https arxiv org pdf 2010 11929 pdf 跟李沐学AI https www bilibili com video BV15P4y137jb spm id from
  • 【ThreadPoolTaskSchedule】实现手动开启关闭定时任务

    最近在公司呢 有一个需求 大概意思就是需要我去调用远程接口 但如果出现异常或者响应失败的时候 就需要开启重试机制 直到返回成功的响应为止 我很疑惑 按理说这种情况通常都应该有一个最大重试次数吗 最终在我像组长确认这个需求之后 还是要求我按照
  • ELK 日志分析系统

    ELK 日志分析系统 2015 10 08 13 18 58 标签 elk 原创作品 允许转载 转载时请务必以超链接形式标明文章 原始出处 作者信息和本声明 否则将追究法律责任 http 467754239 blog 51cto com 4
  • 软件测试 - 边界值法

    文章目录 介绍 等价类划分法的区别 常见的边界值 步骤 案例 介绍 边界值分析法就是对输入或输出边界值进行测试的 也是一种黑盒测试 边界值分析法通常作为等价类划分法的补充 其测试用例来自等价类的边界 长期的经验得知 大量的错误是发现在输入或
  • 二叉树的遍历方式(前序遍历、中序遍历、后序遍历、层序遍历、深度优先遍历、广度优先遍历)

    前序 中序 后序 层序 一 前序遍历 步骤 根节点 gt 左子节点 gt 右子节点 适用场合 在第一次遍历到节点时就执行操作 一般只是想遍历执行操作 或输出结果 可选用前序遍历 二 中序遍历 步骤 左子节点 gt 根节点 gt 右子节点 适
  • 服务器虚拟化集群部署

    多服务器虚拟化集群部署 介绍 服务器虚拟化有有利于节省服务器开支 提高服务器资源利用率 将服务器物理资源逻辑化 动态分配内存 cpu 磁盘等物理资源 以dell的R730服务器为例 VMware ESXi5 5虚拟化软件 虚拟化服务器 1
  • ps命令解析

    ps命令用于报告当前系统的进程状态 可以搭配kill指令随时中断 删除不必要的程序 ps命令是最基本同时也是非常强大的进程查看命令 使用该命令可以确定有哪些进程正在运行和运行的状态 进程是否结束 进程有没有僵死 哪些进程占用了过多的资源等等