51CTO首页
AI.x社区
博客
学堂
精品班
直播训练营
企业培训
鸿蒙开发者社区
WOT技术大会
AIGC创新中国行
IT证书
公众号矩阵
移动端

Linux 中关于 ps 命令的一些常用例子

系统 Linux
Linux 中的 ps 命令可以显示系统中正在运行的进程信息。本文将介绍一些关于 ps 命令最常用的例子

ps 命令是什么?

Linux 中的 ps 命令可以显示系统中正在运行的进程信息,比如进程ID等。它是一个应用很广泛的工具,有大约80多个选项,足见它的复杂性。本文将介绍一些关于 ps 命令最常用的例子。

ps命令在Linux中的基本用法

不带任何选项的 ps 命令,显示当前 shell 中正在运行的进程:

ps

下面是输出,我在后台发送了 gedit 命令,所以它显示了三个进程,否则你通常只会看到 ps 和 bash。​

     PID TTY          TIME CMD
    503 pts/0 00:00:00 gedit
    2053 pts/0 00:00:00 ps
    31585 pts/0 00:00:00 bash

    在这里:

    • PID 是进程的唯一 进程ID;
    • TTY 是用户登录的终端类型。pts表示伪终端;
    • TIME 显示进程已运行的时间;
    • CMD 是用以启动进程的命令。

    当然,这个例子不能提供任何真正有用的信息,下面我们来看一些 ps 命令的更实用的例子。

    1. 查看所有正在运行的进程

    如果要查看自己运行的所有进程,可以使用选项 x

    ps -x

    x 选项将显示所有进程,即使它们不与当前 tty(终端类型)关联,或者它们没有控制终端(如守护进程)。

    选项前面的中划线 - 是可选的,但一般在 Linux 中约定使用它,所以最好带上中划线 -

    以下是其中一部分输出(我省略了一些,因为它总共有数百行):​

     PID TTY      STAT   TIME COMMAND
    503 pts/0 Sl 0:00 gedit
    2245 ? S 0:00 /usr/bin/ssh-agent -D -a /run/user/1000/keyring/.ssh
    3039 ? Ss 0:00 /lib/systemd/systemd --user
    3040 ? S 0:00 (sd-pam)
    3054 ? SLl 0:01 /usr/bin/gnome-keyring-daemon --daemonize --login
    3059 tty2 Ssl+ 0:00 /usr/lib/gdm3/gdm-x-session --run-script env

    上述输出中的 STAT 表示进程状态码(Process State Code),你可以在 ps 的 man 手册中查看其详细信息。

    不过我们很少会看到 ps 只使用 -x 选项,通常会与选项 -u 一起使用:

    ps -ux


    使用选项 -u,可以看到每个进程的详细信息:​

    USER   PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    gliu 503 0.0 0.4 681580 37516 pts/0 Sl 18:09 0:00 gedit
    gliu 2245 0.0 0.0 11300 1496 ? S 18:37 0:00 /usr/bin/ssh-agent -D -a /run/user/1000/keyring/.ssh
    gliu 3039 0.0 0.0 77344 3508 ? Ss 10:37 0:00 /lib/systemd/systemd --user
    gliu 3040 0.0 0.0 114632 360 ? S 10:37 0:00 (sd-pam)
    gliu 3054 0.0 0.1 517104 11512 ? SLl 10:37 0:01 /usr/bin/gnome-keyring-daemon

    上面输出中,可以看到每个进程的用户名、CPU消耗和内存使用情况等。RSS显示进程当前在 RAM 中有多少内存,而 VSZ 则显示进程总共有多少虚拟内存。

    2. 使用 ps aux 命令查看所有正在运行的进程

    你可能在 Linux 教程或文档中经常看到 px -aux 或者 px aux 这样的例子。

    通过使用 -a 选项,可以看到 Linux 系统中所有用户正在运行的进程。

    ps -aux

    其输出与 ps -ux 相同,但也包含了其他用户的进程,-u 选项可以让你看到进程所属用户。

    图片

    3. 使用 ps -ef 查看正在运行的进程

    除了 ps -aux 之外,还可以使用 -e 选项列出所有正在运行的进程,然后在结合 -f 选项,以获得运行进程的完整列表:

    ps -ef

    这里请注意 e 前面的中划线 - 很重要,如果没有的话,会显示不同的结果。

    此外还可以组合 H 选项,在线程视图中查看所有进程,其中子进程位于其父进程下:

    ps -efH

    4. 查看特定用户的进程

    要查看某个用户正在运行的进程,可以使用 -U 选项后跟用户名:

    ps -U user_name

    比如,查看 root 用户运行的进程:​

    ps -U root
    PID TTY TIME CMD
    1 ? 00:00:41 systemd
    2 ? 00:00:00 kthreadd
    3 ? 00:00:00 rcu_gp
    4 ? 00:00:00 rcu_par_gp
    8 ? 00:00:00 mm_percpu_wq
    9 ? 00:00:03 ksoftirqd/0
    10 ? 00:01:22 rcu_sched

    5. 查看由组运行的所有进程

    可以通过提供组名或组id,按组而不是用户对正在运行的进程进行分类:

    ps -G group_name_or_id

    还可以组合使用 f 选项以获得完整的列表,大家可以自己试试看看输出结果。

    6. 获取程序的所有事件和 PID

    ps 命令的一个基本用途是获取正在运行的程序的进程ID(PID)。比如当你要结束某个程序时,会搜索所有的程序事件,获取它们的PID,然后使用 kill 命令结束该进程。

    ps -C program__name

    比如,我要查询 apt 包管理器所运行的实例:

    ps -C apt
    PID TTY TIME CMD
    11425 pts/1 00:00:00 apt

    另外,也可以使用 ​ ​grep ​​​来获取类似的结果:

    ps aux | grep program_name


    7. 获取相关 PID 的进程信息

    如果你有一个 PID,但是不知道它是属于哪个进程,可以使用 ps 命令来查询进程信息:

    ps -pN

    可以使用逗号来分割多个PID,进而查询多个进程信息:

    ps -pN1,N2,N3

    正如本文开始所说的,ps 是一个复杂且应用广泛的命令,本文所介绍的只是一些最常用的例子。关于其详细信息,大家可以查看 man 手册。

    责任编辑:庞桂玉 来源: TIAP
    相关推荐
    Linux route命令输出信息一些讲解
    本文章主要介绍一些Linuxroute命令中的信息输出方法,希望对于一些Linux新手有很好的帮助。

    2010-03-11 14:16:16

    Linux route
    盘点一些常用Linux小技巧
    大家好,这次给大家分享一些Linux的实用小技巧。

    2022-02-17 13:58:38

    Linux 技巧 文件
    routeros软路由一些常用命令
    看了良多routeros软路由的材料都是关于如何装置的,却很少见到关于routeros软路由的敕令材料(也许由于有winbox了),固然在routeros软路由的手册中有阐明,然则是英文版本的,不是很容易看懂。

    2013-06-26 14:00:40

    routeros软路由 routero
    关于JavaBean规范一些情形分析
    本文描述了关于JavaBean规范中应该知道的二三事。Sun提供的JavaBean规范的文档足足有114页,本文对于一些实际中的问题作了一些总结。

    2009-07-02 10:52:30

    JavaBean规范
    关于Android一些设计
    Android多型号的设备以及形状的诸多因素,让其设计感觉像是一场艰苦的战斗。其神秘的文档使得设计和生产在一开始就显得很难。在网上找有关Android设计的网络资源,你会发现很少有帮助的东西。

    2011-07-13 09:13:56

    Android 设计
    一些常用SQL语句
    下文为您列举了一些非常实用的SQL语句,如果您刚刚接触SQL数据库,不妨看看,相信对您学习SQL语句方面会有所帮助。

    2010-09-28 14:14:19

    SQL语句
    一些iptables常用应用
    iptables是与最新的2.6.x版本Linux内核集成的IP信息包过滤系统。本文我将带大家去看看一些iptables具体的有用的应用实例。

    2011-03-15 17:46:43

    一些高效Linux命令行操作
    查找Java项目中,main方法定义在哪个文件里,切换到你要查找项目的目录下执行......

    2010-01-15 10:34:59

    Linux 命令行操作
    iOS关于列表滚动流畅一些探讨
    近些年,App越来越推崇体验至上,随随便便乱写一通的话已经很难让用户买帐了,顺滑的列表便是其中很重要的一点。如果一个App的页面滚动起来总是卡顿卡顿的,轻则被当作反面教材来吐槽或者衬托“我们的Appbalabala…”,重则直接卸载。正好最近在优化这一块儿,总结记录下。

    2017-09-10 17:31:18

    iOS 渲染 数据
    bash 脚本关于变量一些用法总结
    除了这种用法之外,针对变量还可以有其他的一些操作,比如在未设置变量时设置一个默认值,以及为单个变量分配多个值等。

    2023-02-10 09:46:04

    bash 脚本 变量
    关于Java继承一些复习
    本文总结了Java继承中的几点心得,其中包括继承后成为私有域的情况,子类构造函数没有显式调用超类构造函数,以及超类没有无参构造函数,子类中又没有显式调用的情况等等。

    2009-06-18 09:51:25

    Java继承
    关于前端框架一些观点
    我所理解的库,解决的是代码或是模块级别的复用或者对复杂度的封装问题;而框架,更多的是对模式级别的复用和对程序组织的规范,这里的模式是指比如MVC,为了实现M和V的解耦

    2013-04-07 10:40:55

    前端框架 前端
    关于DCI传输网络一些探讨
    关于DCI技术的探索,最近很是热门,尤其是在SDNWAN被大家重视起来后,关于DCI技术的介绍文章层出不穷。本文着重对DCI网络中传输网络部分的技术和现有一些情况进行介绍,希望能给大家带来一定的帮助,请轻喷。

    2017-02-20 16:28:30

    DCI SDN-WAN 传输网络
    Oracle监控一些常用工具
    以下的文章主要是描述在Linux操作系统下Oracle监控的一些常用工具,其中包括top、Ps、还有Kill、等一些工具的介绍。

    2010-04-19 14:37:14

    Oracle监控
    JavaScript 一些常用设计模式
    设计模式的定义:在面向对象软件设计过程中针对特定问题的简洁而优雅的解决方案

    2019-08-19 14:56:07

    设计模式 javascript
    Linux下10个ps命令基本例子
    在Linux下ps命令是用于查看系统上运行的进程的最基本的命令之一。在这篇文章中,我们将使用ps命令以不同的方式来查看进程、筛选和排序它们,以加强基础部分。

    2013-12-06 17:39:49

    Linux ps命令
    Unix系统文件使用chmod一些例子
    文件在创建的时候,Unix系统使用掩码来决定文件的权限,掩码的二进制对应位为1的,文件属性的对应位就设置为0,例如当掩码的八进制表示为022时,创建的文件权限就为755。

    2010-05-10 15:41:38

    Unix系统
    关于《Java封面》一些感想
    今天正好看了博客园的首页的一篇文章《Java封面》,初次一看,觉得这个貌似很这个说的完全都不靠谱啊,再一看,原来是2001年写的,然后在看看作者,发现原来是硅谷创业教父PaulGraham写的,联想到之前看到他写的一本书《黑客与画家》,突然能够明白为什么他这么认为java前途了。

    2012-09-25 10:03:56

    Java Java封面 Java开发
    Struts学习一些常用属性和案例总结
    本文是作者对struts学习的一些小结,包括一些常用的属性,一些实际开发的例子。希望这些能帮助大家的struts学习之旅。

    2009-06-04 09:14:32

    struts学习 struts常用属性
    关于Windows 8 Enterprise 一些细节
    这周早些时候,微软发布了关于Windows8的SKU版本,Windows8,Windows8Pro和Windows8RT。不久后微软再一次宣布将会发布Windows8Enterprise版本SKU。

    2012-04-19 10:06:55

    微软 Windows 8 E

    4617作文网鬼谷子称骨算命梦到大狗啥意思周公解梦姓贺什么起名起名朱辰造梦西游ol脚本辅助破解修改器怀孕一周肚子容易涨吗崔姓鼠年男孩起名月经周期长不容易老阴历算命生辰周易生辰八字合婚解梦洗手水龙头外汇交易周末算死命小说免费阅读中华周易免费书籍周易生辰八字起名评分女孩起名应该起什么样的名宝宝起名邓铖字起名的寓意周易在线排盘系统给普洱茶起个名字梦幻花园破解版最新周易的易含义网上起名公司大全 查询如何学算命批八字《周易》与预测学舞蹈培训起什么名字好龚姓起名大全常女孩起名男人梦到蛇是什么意思周公解梦2020年出生的宝宝起什么名字好淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男子给前妻转账 现任妻子起诉要回网友建议重庆地铁不准乘客携带菜筐月嫂回应掌掴婴儿是在赶虫子重庆警方辟谣“男子杀人焚尸”国产伟哥去年销售近13亿新的一天从800个哈欠开始男孩疑遭霸凌 家长讨说法被踢出群高中生被打伤下体休学 邯郸通报男子持台球杆殴打2名女店员被抓19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警两大学生合买彩票中奖一人不认账德国打算提及普京时仅用姓名山西省委原副书记商黎光被逮捕武汉大学樱花即将进入盛花期今日春分张家界的山上“长”满了韩国人?特朗普谈“凯特王妃P图照”王树国3次鞠躬告别西交大师生白宫:哈马斯三号人物被杀代拍被何赛飞拿着魔杖追着打315晚会后胖东来又人满为患了房客欠租失踪 房东直发愁倪萍分享减重40斤方法“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火手机成瘾是影响睡眠质量重要因素考生莫言也上北大硕士复试名单了妈妈回应孩子在校撞护栏坠楼网友洛杉矶偶遇贾玲呼北高速交通事故已致14人死亡西双版纳热带植物园回应蜉蝣大爆发男孩8年未见母亲被告知被遗忘张立群任西安交通大学校长恒大被罚41.75亿到底怎么缴沈阳一轿车冲入人行道致3死2伤奥运男篮美国塞尔维亚同组周杰伦一审败诉网易国标起草人:淀粉肠是低配版火腿肠外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万杨倩无缘巴黎奥运男子被猫抓伤后确诊“猫抓病”春分“立蛋”成功率更高?记者:伊万改变了国足氛围奥巴马现身唐宁街 黑色着装引猜测

    4617作文网 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化