Linux中 ps命令详解

这篇具有很好参考价值的文章主要介绍了Linux中 ps命令详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、基础概念

指令: ps

作用:查看系统进程,比如正在运行的进程有哪些,什么时候开始运行的,哪个用户运行的,占用了多少资源。

参数:

  • -e     显示所有进程
  • -f     显示所有字段(UID,PPIP,C,STIME字段)
  • -h    不显示标题
  • -l     长格式
  • -w    宽输出
  • -a     显示一个终端的所有进程
  • -r    只显示正在运行的进程。
  • -u    显示当前用户进程和内存使用情况
  • -x    显示没有控制终端的进程
  • –sort     按照列名排序

二、常用操作

ps命令常用的方式有三种:

  • ps -ef:查看所有进程
  • ps -aux:查看所有进程
  • ps -ef | grep tomcat:查看指定进程(| 符号,是个管道符号,表示ps grep 命令同时执行)

1、查看所有进程(连带命令行)

ps -ef

linux的ps指令,linux知识点杂烩,linux

字段解释:

  • UID:用户ID,即进程的拥有者
  • PID:进程ID
  • PPID:该进程的父级进程id,如果一个程序的父级进程找不到,该程序的进程被称为僵尸进程
  • C:cpu的占用率,形式是百分数(%
  • STIME:进程开始启动时间
  • TTY:终端设备,发起该进程的设备识别符号,如果显示表示该进程并不是由终端发起
  • TIME:进程的执行时间
  • CMD:该进程的名称或对应的路径

2、显示所有包含其他使用者的进程

ps -aux

linux的ps指令,linux知识点杂烩,linux

字段解释:

USER:创建进程的用户

PID:进程ID

%CPU:进程占用CPU的百分比

%MEM:进程占用物理内存的百分比

VSZ:进程占用虚拟内存的大小(单位KB)

RSS:进程占用实际物理内存的大小(单位KB)

TTY:进程在哪个终端运行。

STAT:进程状态

START:进程开始启动的时间

TIME:进程使用的CPU(运算)时间

COMMAND:调用进程的命令

3、查看指定进程(grep过滤,grep 命令是查找(Global Regular Expression Print),能使用正则表达式搜索文本,然后把匹配的行显示出来)

ps -ef 通常会配合 grep 来过滤指定的进程,比如

搜索 mysql 的进程:ps -ef | grep mysql

linux的ps指令,linux知识点杂烩,linux

搜索 tomcat 的进程:ps -ef | grep tomcat

linux的ps指令,linux知识点杂烩,linux

4、查看CPU/内存占用率最高的进程

1)查看进程的时候,让进程按照CPU使用率排序,然后展示前10行,就能清晰地看到哪些进程占用的资源比较多。

PS1:head -11 是因为标题也算一行

PS2+-号可以调整排序,-pcpu 表示降序,+pcpu 表示升序

ps -aux --sort=-pcpu | head -11

linux的ps指令,linux知识点杂烩,linux

2)同理,把 -pcpu 换成 -pmem,就能查看内存使用最多的10个进程。

ps -aux --sort=-pmem | head -11

linux的ps指令,linux知识点杂烩,linux

3)如果不限制行数,也可以使用 sort 按照指定的列排序

降序:

ps -aux | sort -nk 4 -r

升序:

ps -aux | sort -nk 4

linux的ps指令,linux知识点杂烩,linux

5、查看指定用户的进程

查看某个用户开启了哪些进程,可以使用 -u 参数指定用户名,比如,查看root用户的进程有哪些:

ps -u root -ef

linux的ps指令,linux知识点杂烩,linux

6、分页查看进程

除了 grep 外,还可以配合 more 分页查看进程:ps -ef | more

linux的ps指令,linux知识点杂烩,linux

翻页的操作同 more 命令,q键退出,空格键翻页

三、拓展

1、TTY字段(终端类型)

TTY字段表示运行进程的终端是哪个,这里的终端类型有两种:tty和pts。

2、STAT字段(进程状态)

STAT字段表示进程的状态,常见的状态有以下几种:

  • D:睡眠状态(不可被唤醒),常用于I/O情况。
  • R:进程正在运行
  • S:睡眠状态(可被唤醒)
  • T:停止状态
  • W:内存交互状态
  • Z:僵尸进程(不存在但暂时无法消除)
  • <:高优先级
  • N:低优先级
  • L:被锁入内存
  • s:包含子进程
  • l:多线程
  • +:位于后台

3、僵尸进程

进程由于非正常停止或程序编写错误,导致子进程比父进程先结束,而父进程又没有正常回收子进程,使子进程一直在内存中,导致资源浪费。这种情况就是僵尸进程。

PS:正常情况下应该是父进程先结束,然后子进程由init接管,init 结束子进程并回收对应的资源。文章来源地址https://www.toymoban.com/news/detail-784992.html

到了这里,关于Linux中 ps命令详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux基础知识点2

    Linux基础知识 适合有Linux基础的人群进行复习。 禁止转载! 文件管理与常用命令 Linux的文件的组成部分:        文件名 、 inode (i节点)和 block (真正存数据的区域)。 查看某个文件的属性:            ls -lh     #可看到有类似”-rw-r--r--”的属性符号           第

    2024年02月09日
    浏览(52)
  • linux运维知识点

    Linux作为一种开源操作系统,被广泛地应用于企业、政府和私人用户的计算机系统中,其优越的稳定性、安全性和灵活性使得 Linux 成为了云计算、大数据和人工智能等最热门领域的重要组成部分。对于从事 Linux 运维的人员来说,了解其知识点和技能是必不可少的。本文将从以

    2024年02月15日
    浏览(52)
  • Linux知识点 -- 进程概念(补充)

    在用户每次使用malloc等函数在进程的堆区申请地址时,用户只需要指定空间的大小,并且会得到一个起始地址,而不会得到结束地址; 因为 堆区的结构都是由 vm_area_struct 管理的,每次malloc都会申请一个该结构体; malloc在堆上申请空间时,只需要知道起始地址,不需要知道结

    2024年02月13日
    浏览(46)
  • Linux知识点 -- 进程间通信(二)

    先在内存中申请空间,然后将这段空间映射到不同进程的地址空间中,这就叫做共享内存; 一般都是映射在进程的堆栈之间的共享区; 共享内存不属于任何一个进程,它属于操作系统; 操作系统对共享内存的管理,是先描述再组织,先通过内核数据结构描述共享内存的属性

    2024年02月14日
    浏览(51)
  • 【知识点】linux下启动tomcat

    切换到tomcat安装目录下的bin目录。 如不知安装目录,可以使用: 查找。 进入bin目录,通过命令启动。 (该方式是直接后台启动。当关闭linux会话窗口,tomcat服务也随之关闭。) (该方式启动,会显示日志,不能输入linux命令。当关闭linux会话窗口,tomcat服务也随之关闭。)

    2024年02月08日
    浏览(50)
  • Linux知识点 -- 网络基础(一)

    独立模式:计算机之间相互独立 网络互联:多台计算机连接在一起,完成数据共享 局域网LAN:计算机数量更多了,通过交换机和路由器连接在一起: 广域网WAN:将远隔千里的计算机都连接在一起 注:局域网和广域网只有规模上的差别; OSI (Open System Interconnection,开放系统互

    2024年02月11日
    浏览(54)
  • Linux知识点 -- 基础IO(二)

    在上面的代码中,fprintf本来是向stdout中打印的,但是stdout关闭了,实际上fprintf事项fd是1的文件中打印,这里log.txt的fd就是1; 运行结果为: 这就叫做 输出重定向 ; 上面的代码将stdout关闭了,并打开log.txt文件,则log.txt文件的fd就是1; 在系统中,stdout就代表着fd为1,所以默

    2024年02月15日
    浏览(39)
  • 关于Linux同步机制知识点整理

    在Linux系统中,同步机制是操作系统中非常重要的一部分,以下是一些基本要点: 互斥锁 互斥锁是一种「独占锁」,比如当线程 A 加锁成功后,此时互斥锁已经被线程 A 独占了,只要线程 A 没有释放手中的锁,线程 B 加锁就会失败,失败的线程B于是就会释放 CPU 让给其他线程

    2024年02月11日
    浏览(48)
  • Linux网络编程(一-网络相关知识点)

    目录    一、网络相关知识简介 二、网络协议的分层模型 2.1 OSI七层模型 2.2 TCP/IP五层模型 2.3 协议层报文间的封装与拆封  三、IP协议 3.1 MAC地址  3.2 IP地址 3.3 MAC地址与IP地址区别 互联网通信的本质是数字通信,任何数字通信都离不开通信协议的制定,通信设备只有按照约定

    2024年01月24日
    浏览(37)
  • 【Linux】环境变量与进程优先级知识点

    环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数。 PATH : 指定命令的搜索路径 HOME : 指定用户的主工作目录(即用户登陆到Linux系统中时,默认的目录) SHELL : 当前Shell,它的值通常是/bin/bash USER:记录了当前登录的用户是谁 主要以PATH进行学习

    2023年04月23日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包