1、ps命令介绍

ps命令是用来静态显示系统中进程的命令。

不过这个命令有些特殊,它部分命令的选项前不能加-,比如命令ps aux,其中aux是选项,但是这个选项前不能加-

这是因为ps命令的部分选项需要遵守BSD操作系统的格式,所以ps命令的常用选项的组合是固定的。

命令如下:

# 查看系统中所有进程,使用BSD操作系统格式。
# aux选项组合是一个习惯用法。
[root@localhost ~]# ps aux # 查看系统中所有进程,使用Linux标准命令格式。
[root@localhost ~]# ps -le 常用选项:
а:显示终端上的所有进程,包括其他用户的进程。
u:以用户为主的格式来显示程序状况。
x:显示所有程序,不以终端机来区分。
-l:长格式显示。显示更加详细的信息。
-е:显示所有进程,和-A作用一致
-h:不显示标题。
-f:全格式。
-w:宽输出。

2、ps aux命令示例

示例:查看系统中所有正在运行的进程。

[root@localhost ~]# ps -aux
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 19344 1548 ? Ss 08:41 0:02 /sbin/init
root 2 0.0 0.0 0 0 ? S 08:41 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 08:41 0:00 [migration/0]
...省略...

如果aux选项前面加了一个-,就会出现一个行警告:

Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ

提示你有语法错误,多了一个-

但是之后显示的Linux系统进程的结果是正确的。

我们把aux选项前面的-去掉就可以了,如下:

[root@localhost ~]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 19344 1548 ? Ss 08:41 0:02 /sbin/init
root 2 0.0 0.0 0 0 ? S 08:41 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 08:41 0:00 [migration/0]
...省略...

ps aux命令输出项解释:

  • 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:进程状态。(点击链接,可查看文章中的进程状态介绍。https://www.cnblogs.com/liuyuelinfighting/p/15692465.html
  • START:该进程的启动时间。
  • TIME:该进程占用CPU的运算时间,注意不是系统时间,时间越长证明该进程越耗资源。
  • COMMAND:产生此进程的命令名。

提示:

Linux系统中,用户的名称,文件的名称,包括进程的名称等,都是给用户看的。

Linux系统查找的时候,还是根据ID信息来进行查找。

说明:

我们可以看到ps aux命令的执行结果中,TTY输出项有的是?,其实这些都是由Linux系统内核直接产生的进程,不需要终端来调用,也就没有运行终端的信息。

3、ps -le命令示例

示例:查看系统中所有正在运行的进程。

[root@localhost ~]# ps -le
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
4 S 0 1 0 0 80 0 - 4836 poll_s ? 00:00:02 init
1 S 0 2 0 0 80 0 - 0 kthrea ? 00:00:00 kthreadd
1 S 0 3 2 0 -40 - - 0 migrat ? 00:00:00 migration/0
...省略...

ps -le命令输出项解释:

  • F:进程标志,说明进程的权限。

    常见的标志有:

    1:进程可以复制,但是不能执行。

    4:进程使用超级用户权限。
  • S:进程状态。具体的状态和ps aux命令中STAT状态一致。
  • UID:进程是哪个UID用户调用运行的。
  • PID:进程的ID号。
  • PPID:父进程的ID号。
  • C:该进程的CPU使用率,单位是百分比。
  • PRI:进程的优先级,数值越小该进程优先级越高,越快被CPU执行。
  • NI:进程的优先级,也是数值越小越早被执行。
  • ADDR:该进程在内存的哪个位置。
  • SZ:该进程占用多大内存。
  • WCHAN:该进程是否运行。-代表正在运行。
  • TTY:该进程由哪个终端产生的。
  • TIME:该进程占用CPU的运算时间,注意不是系统时间。
  • CMD:产生此进程的命令名(缩写)。

说明:

ps aux命令和ps -le命令,两个命令都是静态查看Linux系统所有正在运行的进程。

具体用哪个命令,看自己的习惯。我比较习惯用ps aux命令查看Linux系统进程。

如果要看产生此进程的命令名的全程,就需要用ps aux命令,有的时候会比较方便。

4、pstree命令

可以查看到进程之间依赖关系的,一个进程会依赖哪些进程。

pstree命令也是查看Linux系统中进程的命令,是以树型关系方式展示的。

[root@localhost ~]# pstree [选项]

选项:
-p:显示进程的PID。
-u:显示进程的所属用户。

示例:

『学了就忘』Linux系统管理 — 82、Linux中进程的查看(ps命令)的更多相关文章

  1. 『学了就忘』Linux文件系统管理 — 59、使用fdisk命令进行手工分区

    目录 1.手工分区前提 (1)要有一块新的硬盘 (2)在虚拟机中添加一块新硬盘 2.手工分区 (1)查看Linux系统所有硬盘及分区 (2)手工分区:详细步骤 (3)保存手工分区 3.硬盘格式化 4. ...

  2. 『学了就忘』Linux文件系统管理 — 60、Linux中配置自动挂载

    目录 1.自动挂载 2.如何查询系统下每个分区的UUID 3.配置自动挂载 4./etc/fstab文件修复 上一篇文章我们说明了手动分区讲解,对一块新硬盘进行了手动分区和挂载. 但是我们发现重启系统 ...

  3. 『学了就忘』Linux文件系统管理 — 61、使用parted命令进行分区

    目录 1.parted命令介绍 2.parted交互模式 3.建立分区 (1)查看分区 (2)修改成GPT分区表 (3)建立分区 (4)建立文件系统(格式化) (5)调整分区大小 (6)删除分区 1. ...

  4. 『学了就忘』Linux系统管理 — 83、Linux中进程的查看(top命令)

    目录 1.top命令介绍 2.top命令示例 3.top命令输出项解释 4.top命令常用的实例 1.top命令介绍 top命令是用来动态显示系统中进程的命令. [root@localhost ~]# ...

  5. 『学了就忘』Linux系统管理 — 86、查看系统资源相关命令

    目录 1.vmstat命令 2.dmesg命令 3.free命令 4.查看CPU信息 5.查看本机登陆用户信息 (1)w命令 (2)who命令 6.uptime命令 7.查看系统与内核相关信息 1.v ...

  6. 『学了就忘』Linux基础 — 1、UNIX系统介绍

    目录 (一)UNIX系统介绍 1.UNIX系统发展历史 2.UNIX 主要发行版本 (二)GNU计划 1.GNU计划介绍 2.为何Stallman会发起这个GNU计划呢? 3.GNU的通用公共许可证: ...

  7. 『学了就忘』Linux基础 — 16、Linux系统与Windows系统的不同

    目录 1.Linux严格区分大小写 2.Linux一切皆文件 3.Linux不靠扩展名区分文件类型 4.Linux中所有的存储设备都必须在挂载之后才能使用 5.Windows下的程序不能直接在Linu ...

  8. 『学了就忘』Linux基础命令 — 20、文件操作的相关命令

    目录 1.touch 命令 2.stat命令 3.cat命令 4.more命令 5.less命令 6.head命令 7.tail命令 1.touch 命令 touch命令用于创建空文件或修改文件时间, ...

  9. 『学了就忘』Linux基础命令 — 26、帮助命令

    目录 1.man命令 (1)man命令的快捷键 (2)man命令的帮助级别(了解即可) (3)man命令的使用 2.info命令 3.help命令 4.--help选项 1.man命令 man是最常见 ...

随机推荐

  1. AtCoder Regular Contest 127

    Portal B Description 给出\(n(\leq5\times10^4),L(\leq15)\),构造\(3n\)个不同\(L\)位的三进制数,使得在这\(3n\)个数的每一位上,0/1 ...

  2. [bzoj1122]账本

    简化问题:如果没有2操作,答案是多少贪心:修改-一定修改最前面的,修改+一定修改最后面的,正确性显然而通过1操作,要完成两步:1.让最终结果为q:2.让前缀和非负,通过贪心可以获得最小值(具体来说,假 ...

  3. mybatis-批量操作数据(list对象 )

    在实际工作中老是忘记 传入的参数和数据库参数名称要一致还是与实体类型一致导致很多笑话发生. 那我还是做个记录吧! dao层: int addRemark(@Param("list" ...

  4. BehaviorTree.CPP.行为树XML格式(六)

    The XML format XML模式的基础 在第一个教程中,介绍了这个简单的树. <root main_tree_to_execute = "MainTree" > ...

  5. [NOI 2014]起床困难综合症[二进制]

    背景 21 世纪,许多人得了一种奇怪的病:起床困难综合症,其临床表现为:起床难,起床后精神不佳.作为一名青春阳光好少年,atm 一直坚持与起床困难综合症作斗争.通过研究相关文献,他找到了该病的发病原因 ...

  6. 【AGC052A】

    题目 \(有T组询问\) \(每次给一个n\) \(3个01串\),\(这三个串每个都有n个0\),\(n个1\),\(求一个2*n + 1的字符串\),\(使他成为S1+S1,S2+S2,S3+S3 ...

  7. 洛谷 P3781 - [SDOI2017]切树游戏(动态 DP+FWT)

    洛谷题面传送门 SDOI 2017 R2 D1 T3,nb tea %%% 讲个笑话,最近我在学动态 dp,wjz 在学 FWT,而我们刚好在同一天做到了这道题,而这道题刚好又是 FWT+动态 dp ...

  8. 【宏组学】如何根据taxid(或taxname)快速获得taxname(或taxid)?

    需求 我有一个物种taxonomy ID的list,想获得相应的物种名,不要一个个去NCBI Taxonomy官网查.反之根据物种名list查询对应的taxid. 实现 因为之前没怎么用过,我的第一个 ...

  9. Atom编辑器速查

    简介 Atom 是 Github 开源的文本编辑器,相当于半个IDE.其特点如下: (1)免费开源,多平台支持(Windows.Mac.Linux): (2)界面美观.现代化,使用舒适: (3)多文件 ...

  10. Ansi,UTF8,Unicode,ASCII编码的区别

    Ansi,UTF8,Unicode,ASCII编码的区别 近日需要不同的编码,关于上述编码,一直迷迷糊糊,查了些资料,总算大致了解了, 下面全是从网上搜来的: 1.  ASCII和Ansi编码     ...