Linux ps命令:查看正在运行的进程

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

ps 命令是最常用的监控进程的命令,通过此命令可以查看系统中所有运行进程的详细信息。
ps 命令的基本格式如下:

[root@localhost ~]# ps aux
#查看系统中所有的进程,使用 BS 操作系统格式
[root@localhost ~]# ps -le
#查看系统中所有的进程,使用 Linux 标准命令格式 

选项:

  • a:显示一个终端的所有进程,除会话引线外;
  • u:显示进程的归属用户及内存的使用情况;
  • x:显示没有控制终端的进程;
  • -l:长格式显示更加详细的信息;
  • -e:显示所有进程;

ps 命令有些与众不同,它的部分选项不能加入"-",比如命令"ps aux",其中"aux"是选项,但是前面不能带“-”。

【例 1】

[root@localhost ~]# ps aux
#查看系统中所有的进程
USER PID %CPU %MEM  VSZ  RSS   TTY STAT START TIME COMMAND
root   1  0.0  0.2 2872 1416   ?   Ss   Jun04 0:02 /sbin/init
root   2  0.0  0.0    0    0   ?    S   Jun04 0:00 [kthreadd]
root   3  0.0  0.0    0    0   ?    S   Jun04 0:00 [migration/0]
root   4  0.0  0.0    0    0   ?    S   Jun04 0:00 [ksoftirqd/0]
…省略…

表 1 中罗列出了以上输出信息中各列的具体含义。

表 1 ps命令输出信息含义
表头 含义
USER 该进程是由哪个用户产生的。
PID 进程的 ID。
%CPU 该进程占用 CPU 资源的百分比,占用的百分比越高,进程越耗费资源。
%MEM 该进程占用物理内存的百分比,占用的百分比越高,进程越耗费资源。
VSZ 该进程占用虚拟内存的大小,单位为 KB。
RSS 该进程占用实际物理内存的大小,单位为 KB。
TTY 该进程是在哪个终端运行的。其中,tty1 ~ tty7 代表本地控制台终端(可以通过 Alt+F1 ~ F7 快捷键切换不同的终端),tty1~tty6 是本地的字符界面终端,tty7 是图形终端。pts/0 ~ 255 代表虚拟终端,一般是远程连接的终端,第一个远程连接占用 pts/0,第二个远程连接占用 pts/1,依次増长。
STAT 进程状态。常见的状态有以下几种:
  1. -D:不可被唤醒的睡眠状态,通常用于 I/O 情况。
  2. -R:该进程正在运行。
  3. -S:该进程处于睡眠状态,可被唤醒。
  4. -T:停止状态,可能是在后台暂停或进程处于除错状态。
  5. -W:内存交互状态(从 2.6 内核开始无效)。
  6. -X:死掉的进程(应该不会出现)。
  7. -Z:僵尸进程。进程已经中止,但是部分程序还在内存当中。
  8. -<:高优先级(以下状态在 BSD 格式中出现)。
  9. -N:低优先级。
  10. -L:被锁入内存。
  11. -s:包含子进程。
  12. -l:多线程(小写 L)。
  13. -+:位于后台。
START 该进程的启动时间。
TIME 该进程占用 CPU 的运算时间,注意不是系统时间。
COMMAND 产生此进程的命令名。

 【例 2】"ps aux"命令可以看到系统中所有的进程,"ps -le"命令也能看到系统中所有的进程。由于 "-l" 选项的作用,所以 "ps -le" 命令能够看到更加详细的信息,比如父进程的 PID、优先级等。但是这两个命令的基本作用是一致的,掌握其中一个就足够了。

[root@localhost ~]# ps -le
F S UID PID PPID C  PRI Nl ADDR  SZ WCHAN TTY      TIME  CMD
4 S   0   1    0 0  80   0 -    718 -     ?    00:00:02  init
1 S   0   2    0 0  80   0 -      0 -     ?    00:00:00  kthreadd
1 S   0   3    2 0 -40   - -      0 -     ?    00:00:00  migration/0
1 S   0   4    2 0  80   0 -      0 -     ?    00:00:00  ksoflirqd/0
1 S   0   5    2 0 -40   - -      0 -     ?    00:00:00  migration/0
…省略…

表 2 罗列出以上输出信息中各列的含义。

表 2 ps -le 命令输出信息
表头 含义
F 进程标志,说明进程的权限,常见的标志有两个:
  • 1:进程可以被复制,但是不能被执行;
  • 4:进程使用超级用户权限;
S 进程状态。具体的状态和"psaux"命令中的 STAT 状态一致;
UID 运行此进程的用户的 ID;
PID 进程的 ID;
PPID 父进程的 ID;
C 该进程的 CPU 使用率,单位是百分比;
PRI 进程的优先级,数值越小,该进程的优先级越高,越早被 CPU 执行;
NI 进程的优先级,数值越小,该进程越早被执行;
ADDR 该进程在内存的哪个位置;
SZ 该进程占用多大内存;
WCHAN 该进程是否运行。"-"代表正在运行;
TTY 该进程由哪个终端产生;
TIME 该进程占用 CPU 的运算时间,注意不是系统时间;
CMD 产生此进程的命令名;

【例 3】如果不想看到所有的进程,只想查看一下当前登录产生了哪些进程,那只需使用 "ps -l" 命令就足够了:文章来源地址https://www.toymoban.com/news/detail-709347.html

[root@localhost ~]# ps -l
#查看当前登录产生的进程
F S UID   PID  PPID C PRI NI ADDR SZ WCHAN TTY       TIME CMD
4 S 0   18618 18614 0  80  0 - 1681  -     pts/1 00:00:00 bash
4 R 0   18683 18618 4  80  0 - 1619  -     pts/1 00:00:00 ps

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

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

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

相关文章

  • 【Linux 】 ps命令详解,查看进程pid

    ps 命令是最常用的监控进程的命令,通过此命令可以查看系统中所有运行进程的详细信息。 ps 命令有多种不同的使用方法,这常常给初学者带来困惑。在各种 Linux 论坛上,询问 ps 命令语法的帖子屡见不鲜,而出现这样的情况,还要归咎于 UNIX 悠久的历史和庞大的派系。在不

    2024年02月12日
    浏览(32)
  • Linux中显示系统正在运行的进程的命令

    2023年7月29日,周六上午 在Linux中, ps 命令用于显示当前系统中正在运行的进程, ps应该是processes snapshot(进程快照)的缩写。 以下是 ps 命令的常见用法和示例: 显示当前用户的所有进程: ps 显示所有进程(包括其他用户的进程): ps -ef 显示进程树形结构: ps axjf 显示进

    2024年02月14日
    浏览(30)
  • 【Linux命令详解 | ps命令】 ps命令用于显示当前系统中运行的进程列表,帮助监控系统状态。

    在Linux系统中, ps 命令是一个重要的工具,用于展示当前正在运行的进程列表。作为一个博主,了解如何使用 ps 命令可以帮助你监控系统状态,定位问题,以及优化资源分配。本文将从参数列表、知识点讲解和实际示例等方面,深入介绍 ps 命令。 下表列出了 ps 命令的常用参

    2024年02月13日
    浏览(32)
  • Linux命令:重复多次后台运行且不保存输出,查看命令对应的进程数量

    要在后台重复运行 Linux 命令并查看对应的进程数量,你可以使用循环结构和后台运行符号 `` 结合起来。以下是一个示例: ```bash for i in {1..3}; do     your_command /dev/null 21 done ``` 命令 `your_command /dev/null 21 ` 的含义如下: 1. `` 符号表示重定向输出。在这个命令中,`your_command` 的标

    2024年02月22日
    浏览(36)
  • Linux Ubuntu查看正在使用的显卡:运行命令 lspci -nnk | grep -i vga -A3 | grep ‘in use‘

    在Pop!_OS中,可以通过以下命令来查看当前正在使用的显卡: 这个命令会列出所有的VGA设备,并显示当前正在使用的设备。输出的结果可能类似于: 这表示当前正在使用的是NVIDIA显卡驱动程序。如果输出为空,则表示当前系统没有启用任何显卡驱动程序。 另外,如果你使用的

    2024年02月06日
    浏览(36)
  • Linux 系统查看当前正在运行的某个进程的详细执行脚本和目录ls -l /proc/PID/cwd和 ls -l /proc/PID/exe

    首先使用 ps 命令查看当前正在运行的某个进程的 PID,例如: 这个命令会列出所有包含 your_process_name 信息的进程ID(也就是PID)和进程名称。你需要根据进程的名称来找到你想要查看的进程对应的PID。 然后进入 /proc 目录,你可以使用以下命令查看该 PID 对应的执行脚本: 其

    2024年02月11日
    浏览(38)
  • 查看Linux中所有正在运行的服务

    在Linux系统中,有多种方法可以查看当前正在运行的服务。这些方法可以帮助您了解系统中正在执行的各种服务,并监控它们的状态。下面将介绍几种常用的方法。 使用systemctl命令 systemctl是一个用于管理systemd系统和服务的命令行工具。它可以显示当前正在运行的服务以及它

    2024年02月03日
    浏览(34)
  • Linux 使用PS命令掌握进程管理

    在Linux系统中,进程管理是系统管理员和开发人员必备的技能之一。而PS命令作为进程管理的重要工具,可以帮助我们查看和监控系统中运行的进程。本文将详细解析PS命令的使用方法和输出结果,帮助读者全面掌握进程管理的利器。 PS命令概述: PS命令是Process Status的缩写,

    2024年01月19日
    浏览(30)
  • 查看 Linux 上正在运行的所有 Java 程序列表

    在Linux上查看正在运行的所有Java程序列表,可以通过多种方法实现。以下是其中一些常用的方法: 使用 jps 命令 : jps (Java Virtual Machine Process Status Tool)是Java Development Kit(JDK)自带的一个工具,用于列出所有运行的Java进程。基本使用方法如下: 这将列出所有正在运行的J

    2024年02月09日
    浏览(27)
  • linux下查看某进程内有多少个线程的方法(ps、top、Htop)

    下面记录一下在linux下使用ps、top、Htop等指令查看某进程内有多少个线程的方法; 要想查看某个进程内的线程信息,首先得知道我们要查看的是哪个进程,所以第一步要确认该进程的进程号: 比如我们想查看“EngineServer9500”进程内有多少个线程,首先我们需要得到“EngineS

    2024年02月11日
    浏览(30)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包