当前位置: 首页 > news >正文

Linux系统中的ps命令详解及用法介绍

文章目录

  • 一、介绍ps命令
    • A. ps命令的作用
    • B. ps命令的参数
  • 二、常见的ps命令用法
    • A. 显示所有进程信息
    • B. 显示指定进程信息
    • C. 显示指定用户的进程信息
    • D. 按CPU使用率排序显示进程信息
    • E. 按内存使用率排序显示进程信息
  • 三、进一步了解ps命令
    • A. 显示进程树信息
    • B. 显示线程和进程关系
    • C. 显示进程相关的文件信息
    • D. ps命令与grep命令的结合使用
    • E. ps命令与awk命令的结合使用
  • 四、扩展ps命令功能
    • A. bsd格式输出
    • B. 色彩化输出
    • C. 显示更多列信息
    • D. 自定义输出格式
  • 五、其他相关命令
    • A. top命令
    • B. htop命令
    • C. pidof命令
    • D. kill命令
  • 六、总结与注意事项
    • A. ps命令的优缺点
    • B. 更好地使用ps命令的建议
    • C. 注意事项
  • python精品专栏推荐
    • python基础知识(0基础入门)
    • python爬虫知识

一、介绍ps命令

ps命令是Linux系统中的一个非常实用的命令,它用于查看系统中当前运行的进程信息。下面我们来了解一下ps命令的作用和参数。

A. ps命令的作用

ps命令可以列出系统中当前正在运行的进程的详细信息,包括进程ID、父进程ID、占用的CPU和内存等。通过ps命令,我们可以了解到系统中运行的进程情况,对于系统监控和故障排查非常有帮助。

B. ps命令的参数

ps命令支持多种参数来进行不同的查询和显示方式,常用的参数包括:

  • -A:显示所有进程信息。
  • -p:显示指定进程ID的信息。
  • -u:显示指定用户的进程信息。
  • -o:自定义输出格式。

接下来,我们将介绍常见的ps命令用法。

二、常见的ps命令用法

以下是常见的ps命令用法,让我们逐个来了解。

A. 显示所有进程信息

要显示系统中所有进程的信息,可以使用ps -A命令。示例代码如下:

ps -A

这样就会输出系统中所有进程的详细信息。

B. 显示指定进程信息

如果我们只想查看某个特定进程的信息,可以使用ps -p命令加上进程ID来指定。示例代码如下:

ps -p 1234

将上面的1234替换为你想要查看的进程ID,就可以显示该进程的详细信息。

C. 显示指定用户的进程信息

有时候我们需要查看某个特定用户的进程信息,可以使用ps -u命令加上用户名来指定。示例代码如下:

ps -u username

将上面的username替换为你想要查看的用户名,就可以显示该用户的所有进程信息。

D. 按CPU使用率排序显示进程信息

如果我们想要根据CPU使用率来排序显示进程信息,可以使用ps命令的--sort参数。示例代码如下:

ps --sort=-%cpu

这样就会按照CPU使用率递减的顺序显示进程信息。

E. 按内存使用率排序显示进程信息

类似地,如果我们想要根据内存使用率来排序显示进程信息,可以使用ps命令的--sort参数。示例代码如下:

ps --sort=-%mem

这样就会按照内存使用率递减的顺序显示进程信息。

接下来,我们将进一步了解ps命令。

三、进一步了解ps命令

除了上述常见用法外,ps命令还有一些其他的功能,让我们逐个来了解。

A. 显示进程树信息

如果我们想要以进程树的形式显示进程信息,可以使用ps -e --forest命令。示例代码如下:

ps -e --forest

这样就会以树状结构显示进程信息,更加清晰和直观。

B. 显示线程和进程关系

有时候我们需要查看进程与线程之间的关系,可以使用ps -eLf命令。示例代码如下:

ps -eLf

这样就会显示每个线程对应的进程信息,方便我们进行线程级别的分析。

C. 显示进程相关的文件信息

要显示进程打开的文件信息,可以使用ps -e --files命令。示例代码如下:

ps -e --files

这样就会显示每个进程打开的文件路径,帮助我们对系统资源的使用情况进行监控。

D. ps命令与grep命令的结合使用

如果我们只想查询符合某个条件的进程信息,可以将ps命令与grep命令结合使用。示例代码如下:

ps -A | grep "process_name"

将上面的process_name替换为你要查询的进程名,就可以过滤出符合条件的进程信息。

E. ps命令与awk命令的结合使用

类似地,我们还可以将ps命令与awk命令结合使用,对显示的进程信息进行进一步处理。示例代码如下:

ps -A | awk '{print $1, $4}'

这样就会输出每个进程的进程ID和占用的CPU百分比。

现在,让我们来扩展ps命令的功能。

四、扩展ps命令功能

ps命令本身已经非常强大,但我们还可以通过一些额外的设置来扩展其功能。让我们逐个来了解。

A. bsd格式输出

如果我们希望以BSD格式(更易读)来输出进程信息,可以使用ps aux命令。示例代码如下:

ps aux

这样就会以BSD格式输出进程的详细信息。

B. 色彩化输出

如果我们希望以彩色的方式来输出进程信息,可以安装gnome-terminal并使用--color参数。示例代码如下:

ps -A --color

这样就会以彩色的方式输出进程信息,让我们的终端更加鲜艳多彩。

C. 显示更多列信息

ps命令默认只显示一部分列信息,如果我们想要显示更多的列信息,可以使用ps -e -o命令加上要显示的列名。示例代码如下:

ps -e -o pid,ppid,%cpu,%mem,cmd

这样就会显示进程ID、父进程ID、CPU使用率、内存使用率和命令等列信息。

D. 自定义输出格式

如果我们想要自定义输出的格式,可以使用ps -e -o format命令加上自定义的格式。示例代码如下:

ps -e -o pid:PID,ppid:PPID,%cpu:CPU,%mem:MEM,cmd:COMMAND

这样就会按照我们指定的格式输出进程信息,可以根据需要来调整输出的内容和顺序。

现在,让我们了解一些其他相关命令。

五、其他相关命令

除了ps命令外,还有一些其他命令也可以用于进程管理和监控,让我们逐个来了解。

A. top命令

top命令是一个实时的系统资源监视器,可以动态显示系统中各个进程的资源占用情况。示例代码如下:

top

这样就会实时显示系统资源的使用情况和进程的运行状态。

B. htop命令

htop命令是一个交互式的系统资源监视器,功能类似于top命令,但提供了更加友好和直观的界面。示例代码如下:

htop

这样就会以交互式界面显示系统资源的使用情况和进程的运行状态。

C. pidof命令

pidof命令用于根据进程名查询对应的进程ID。示例代码如下:

pidof process_name

将上面的process_name替换为你要查询的进程名,就可以输出对应的进程ID。

D. kill命令

kill命令用于终止指定进程。示例代码如下:

kill pid

将上面的pid替换为你要终止的进程ID,就可以结束该进程的运行。

现在,让我们来总结一下ps命令,并提醒一些注意事项。

六、总结与注意事项

A. ps命令的优缺点

ps命令作为一个系统监控和故障排查工具,具有以下优点:

  • 可以显示系统中所有进程的详细信息。
  • 支持多种参数和选项,灵活可定制。
  • 可以与其他命令结合使用,扩展功能。

但也有一些缺点:

  • 信息显示可能较为繁杂,需要结合其他命令进行过滤和分析。
  • 部分功能需要依赖特定的设置或环境。

B. 更好地使用ps命令的建议

  • 在使用ps命令时,根据实际需求选择合适的参数和选项。
  • 结合其他命令进行过滤和分析,以获取所需的信息。
  • 可以将常用的命令和参数设置为别名,方便快速使用。

C. 注意事项

  • ps命令可能需要root权限才能查看所有进程的信息。
  • 结合其他命令使用时,注意参数和选项的顺序和语法。

python精品专栏推荐


python基础知识(0基础入门)

【python基础知识】0.print()函数
【python基础知识】1.数据类型、数据应用、数据转换
【python基础知识】2.if条件判断与条件嵌套
【python基础知识】3.input()函数
【python基础知识】4.列表和字典
【python基础知识】5.for循环和while循环
【python基础知识】6.布尔值和四种语句(break、continue、pass、else)
【python基础知识】7.实操-用Python实现“文字PK”小游戏(一)
【python基础知识】7.实操-用Python实现“文字PK”小游戏(二)
【python基础知识】8.编程思维:如何解决问题-思维篇
【python基础知识】9.函数的定义和调用
【python基础知识】10.用函数编写程序 - 实操篇
【python基础知识】10.用Python实现石头剪刀布小游戏-函数实操篇
【python基础知识】11.如何debug -常见报错原因及排查思路 - 思维篇
【python基础知识】12.类与对象(一)
【python基础知识】12.类与对象(二)
【python基础知识】13.类与对象(三)
【python基础知识】13.类与对象(四)
【python基础知识】14.图书管理系统的搭建(类与对象实操)
【python基础知识】15.编码基础知识
【python基础知识】16.文件读写基础及操作
【python基础知识】16.“古诗默写题”的python实现(文件读写和编码-实操篇)
【python基础知识】17.模块的概念以及如何引入
【python基础知识】18.实操-使用python自动群发邮件
【python基础知识】19.产品思维以及流程图的使用 - 思维篇
【python基础知识】20.“午饭吃什么”的python实现(产品思维-实操篇)
【python基础知识】21.高效偷懒的正确打开方式-毕业篇
【python文件处理】CSV文件的读取、处理、写入
【python文件处理】Excel自动处理(使用 openpyxl)
【python文件处理】-excel格式处理


python爬虫知识

【python爬虫】1.爬虫基础知识
【python爬虫】2.网页基础知识
【python爬虫】3.爬虫初体验(BeautifulSoup解析)
【python爬虫】4.爬虫实操(菜品爬取)
【python爬虫】5.爬虫实操(歌词爬取)
【python爬虫】6.爬虫实操(带参数请求数据)
【python爬虫】7.爬到的数据存到哪里?
【python爬虫】8.温故而知新
【python爬虫】9.带着小饼干登录(cookies)
【python爬虫】10.指挥浏览器自动工作(selenium)
【python爬虫】11.让爬虫按时向你汇报
【python爬虫】12.建立你的爬虫大军
【python爬虫】13.吃什么不会胖(爬虫实操练习)
【python爬虫】14.Scrapy框架讲解
【python爬虫】15.Scrapy框架实战(热门职位爬取)
【python爬虫】16.爬虫知识点总结复习

相关文章:

Linux系统中的ps命令详解及用法介绍

文章目录 一、介绍ps命令A. ps命令的作用B. ps命令的参数 二、常见的ps命令用法A. 显示所有进程信息B. 显示指定进程信息C. 显示指定用户的进程信息D. 按CPU使用率排序显示进程信息E. 按内存使用率排序显示进程信息 三、进一步了解ps命令A. 显示进程树信息B. 显示线程和进程关系…...

机器学习笔记 - 基于pytorch、grad-cam的计算机视觉的高级可解释人工智能

一、pytorch-gradcam简介 ​Grad-CAM是常见的神经网络可视化的工具,用于探索模型的可解释性,广泛出现在各大顶会论文中,以详细具体地描述模型的效果。Grad-CAM的好处是,可以在不额外训练的情况下,只使用训练好的权重即可获得热力图。 1、CAM是什么? CAM全称Class Activa…...

Python 编程基础 | 第五章-类与对象 | 5.1、定义类

一、类 1、定义类 Python中使用class关键字定义类,class之后为类的名称并以:结尾,类的结构如下: class 类名:多个(≥0)类属性...多个(≥0)类方法...下面定义一个Dog类,如…...

合宙Air780e+luatos+腾讯云物联网平台完成设备通信与控制(属性上报+4G远程点灯)

1.腾讯云物联网平台 首先需要在腾讯云物联网平台创建产品、创建设备、定义设备属性和行为,例如: (1)创建产品 (2)定义设备属性和行为 (3)创建设备 (4)准备参…...

c++系列之string的模拟实现

💗 💗 博客:小怡同学 💗 💗 个人简介:编程小萌新 💗 💗 如果博客对大家有用的话,请点赞关注再收藏 🌞 string() //注意事项: 1.初始化列表随声明的顺序进行初始化 2.cons…...

Spring的beanName生成器AnnotationBeanNameGenerator

博主介绍:✌全网粉丝4W,全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战,博主也曾写过优秀论文,查重率极低,在这方面有丰富的经验…...

FFmpeg 命令:从入门到精通 | ffmpeg 命令直播

FFmpeg 命令:从入门到精通 | ffmpeg 命令直播 FFmpeg 命令:从入门到精通 | ffmpeg 命令直播直播拉流直播推流 FFmpeg 命令:从入门到精通 | ffmpeg 命令直播 本节主要介绍了ffmpeg 命令进行直播拉流、推流的方法,并列举了一些例子…...

A (1087) : DS单链表--类实现

Description 用C语言和类实现单链表&#xff0c;含头结点 属性包括&#xff1a;data数据域、next指针域 操作包括&#xff1a;插入、删除、查找 注意&#xff1a;单链表不是数组&#xff0c;所以位置从1开始对应首结点&#xff0c;头结点不放数据 类定义参考 #include<…...

异常:找不到匹配的key exchange算法

目录 问题描述原因分析解决方案 问题描述 PC 操作系统&#xff1a;Windows 10 企业版 LTSC PC 异常软件&#xff1a;XshellPortable 4(Build 0127) PC 正常软件&#xff1a;PuTTY Release 0.74、MobaXterm_Personal_23.1 服务器操作系统&#xff1a;OpenEuler 22.03 (LTS-SP2)…...

Arcgis打开影像分析窗口没反应

Arcgis打开影像分析窗口没反应 问题描述 做NDVI计算的时候&#xff0c;一直点击窗口-影像分析&#xff0c;发现影像分析的小界面一直不跳出来。 原因 后来发现是被内容列表给遮住了&#xff0c;其实是已经出来了的。。 拖动内容列表就能找到。 解决方案 内容列表和影像分…...

Spring(JavaEE进阶系列1)

目录 前言&#xff1a; 1.Servlet与Spring对比 2.什么是Spring 2.1什么是容器 2.2什么是IoC 2.3SpringIoC容器的理解 2.4DI依赖注入 2.5IoC与DI的区别 3.Spring项目的创建和使用 3.1正确配置Maven国内源 3.2Spring的项目创建 3.3将Bean对象存储到Spring&#xff08…...

Flink状态管理与检查点机制

1.状态分类 相对于其他流计算框架,Flink 一个比较重要的特性就是其支持有状态计算。即你可以将中间的计算结果进行保存,并提供给后续的计算使用: 具体而言,Flink 又将状态 (State) 分为 Keyed State 与 Operator State: 1.1 算子状态 算子状态 (Operator State):顾名思义…...

【threejs】基本编程概念及海岛模型展示逻辑

采用three封装模式完成的海岛动画&#xff08;点击这里查看&#xff09; 直接上代码吧 <template><div class"scene"><video id"videoContainer" style"position:absolute;top:0px;left:0px;z-index:100;visibility: hidden"&g…...

python小技巧:创建单链表及删除元素

目前只有单链表&#xff08;无法查找上一个元素&#xff09;&#xff0c;后面再更新循环链表和双链表。 class SingleLinkedList:def createList(self, raw_list):if len(raw_list) 0:head ListNode()else:head ListNode(raw_list[0])cur headfor i in range(1, len(raw_l…...

ADuM1250 ADuM1251 模块 I2C IIC总线2500V电磁隔离 接口保护

功能说明&#xff1a; 1&#xff0c;2500V电磁隔离&#xff0c;2通道双向I2C&#xff1b; 2&#xff0c;支持电压在3到5.5V&#xff0c;最大时钟频率可达1000KHz&#xff1b; 3&#xff0c;将该隔离模块接入总线&#xff0c;可以保护主MCU引脚&#xff0c;降低I2C总线上的干…...

C# 把多个dll合成一个dll

Nuget 下载ILMerge两个工程 dog为测试工程 TestIlmerge为准备合并的类库 如下图所示&#xff0c; 由于我们引用下面4个库 正常生成后&#xff0c;会有TestIlmerge.dll和下面的这4个dll 只生成TestIlmerge.dll 打开工程文件 在最下方加入以下两段 <Target Name"ILMerge…...

scipy.sparse.coo_matrix.sum()关于axis的用法

以下面的矩阵为例 [1,2,0] [0,3,0] [0,0,0]示例代码 from scipy.sparse import coo_matrix# 创建一个稀疏矩阵 data [1, 2, 3] row [0, 0, 1] col [0, 1, 1] sparse_matrix coo_matrix((data, (row, col)), shape(3,3))# 计算稀疏矩阵中每行非零元素的总和 sum_of_column…...

C++类与对象(下)

文章目录 1.非类型模板2.模板特化2.1.类模板特化2.1.1.全特化2.1.2.偏特化 2.2.函数模板特化 3.函数模板声明定义分离 之前我们学习的模板能达到泛型的原因是&#xff1a;使用了“泛型的类型”&#xff0c;但是如果经过后面的“造轮子”&#xff08;后面会尝试实现一下 STL的一…...

SpringBoot——》引入Redis

推荐链接&#xff1a; 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoD…...

C# newtonsoft序列化将long类型转化为字符串

/// <summary> /// 转化为json的时候long类型转为string /// </summary> public class LongJsonConverter: JsonConverter {public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer){try{return r…...

Vim 调用外部命令学习笔记

Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明&#xff1a; 想象一下&#xff0c;你正在用eNSP搭建一个虚拟的网络世界&#xff0c;里面有虚拟的路由器、交换机、电脑&#xff08;PC&#xff09;等等。这些设备都在你的电脑里面“运行”&#xff0c;它们之间可以互相通信&#xff0c;就像一个封闭的小王国。 但是&#…...

简易版抽奖活动的设计技术方案

1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...

MFC内存泄露

1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练

前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1)&#xff1a;从基础到实战的深度解析-CSDN博客&#xff0c;但实际面试中&#xff0c;企业更关注候选人对复杂场景的应对能力&#xff08;如多设备并发扫描、低功耗与高发现率的平衡&#xff09;和前沿技术的…...

反射获取方法和属性

Java反射获取方法 在Java中&#xff0c;反射&#xff08;Reflection&#xff09;是一种强大的机制&#xff0c;允许程序在运行时访问和操作类的内部属性和方法。通过反射&#xff0c;可以动态地创建对象、调用方法、改变属性值&#xff0c;这在很多Java框架中如Spring和Hiberna…...

ArcGIS Pro制作水平横向图例+多级标注

今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作&#xff1a;ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等&#xff08;ArcGIS出图图例8大技巧&#xff09;&#xff0c;那这次我们看看ArcGIS Pro如何更加快捷的操作。…...

云原生安全实战:API网关Kong的鉴权与限流详解

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关&#xff08;API Gateway&#xff09; API网关是微服务架构中的核心组件&#xff0c;负责统一管理所有API的流量入口。它像一座…...

【从零开始学习JVM | 第四篇】类加载器和双亲委派机制(高频面试题)

前言&#xff1a; 双亲委派机制对于面试这块来说非常重要&#xff0c;在实际开发中也是经常遇见需要打破双亲委派的需求&#xff0c;今天我们一起来探索一下什么是双亲委派机制&#xff0c;在此之前我们先介绍一下类的加载器。 目录 ​编辑 前言&#xff1a; 类加载器 1. …...

【LeetCode】算法详解#6 ---除自身以外数组的乘积

1.题目介绍 给定一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O…...