Linux 中ps 和 top命令详解_ps-ef和top(1)

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

给大家整理的电子书资料:

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

**top命令:**可以持续的监视进程的信息。

**场景一:**如何查看Linux系统中存在mysql、nginx、tomcat进程?

**方法一:**输入命令:ps -ef|grep 相应的进程名称

输入命令: ps -ef

效果如下:

上述红色框住的参数含义如下:

**UID:**用户ID,实际输出的是用户名,如root

**PID:**当前进程的ID

**PPID:**当前进程的父进程ID

**C:**当前进程占用的CPU的百分比

**STIME:**当前进程启动到现在的时间

**TTY:**当前进程在哪个终端上运行,若与进程无关,则显示为?,若为pts/0等,则表示由网络连接主机进程。

**CMD:**命令的名称和参数

关于PID和PPID,我们来看个栗子,如下:

**当我们执行:**ps-ef 命令之后,看到如下关系图:

可以看到ps -ef这个命令的进程PID为5004,而其父进程号PPID为4945,该4945进程号对应的进程命令为-bash,即表明ps -ef命令是运行在-bash这个shell上,而PID为4945对应的父进程号PPID为4893,该进程是4893,这个进程的命令是sshd,即我们表明我们是通过shell登录进来的,再看PID为1881对应的父进程PPID为1,是命令/sbin/init,这是Linux启动之后第一个被加载的进程。**衍生知识点:**如果我们是在物理主机上执行ps -ef,追根溯源过程中,一定不会有sshd相关的命令。

那么,我们如果想看下是否在ps -ef中输出的命令中是否有mysql相关的行,只需要用grep 来捕获mysql关键字即可,即输入命令:ps -ef|grep mysql

效果如下:

**注意:**上图中用红色框圈出的问号,表明当前进程与终端运行无关。此时,我们可以判断既然与终端无关,那就是该命令是由Linux系统首次启动时启动的,而不是通过某个具体的终端。测试例子如下:

首先,在某个终端(可能是pts或者tty)关闭mysql,输入命令:service mysqld stop,然后执行命令:service mysqld start,此时,再执行命令:ps -ef|grep mysql,效果如下:

这里,显示了具体终端的类型。

**总结:**通过TTY的类型,可以知道该进程是否由系统启动时运行的。

**方法二:**输入命令:ps aux | grep 相应的进程名称

比如:查找是否存在MySQL进程,输入:ps aux|grep mysql,效果如下:

其中各个参数的含义如下:

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

**%MEM:**进程占用内存的百分比;

**VSZ:**进程使用的虚拟内存量(KB);

**RSS:**进程占用的固定内存量(KB);

**START:**进程被触发启动的时间;

**TIME:**进程实际使用CPU运行的时间(注意:这是cpu实际的运行时间);

**COMMAND:**命令的名称和参数;

**问题:**如何查看当前进程的内存使用情况,比如项目名称为platform。

输入命令:ps aux|grep platform

注意观察上面用红色框框圈出的参数,都是有用的,第一个1190是当前的进程号,0.3是cpu的使用率,8.9是内存的使用率,4582832单位是KB是虚拟内存的使用率,718104单位是KB是内存的使用率,16:01 是系统的启动时间,如果是具体的时间值时,表示当天16点01分,在当前之前则只显示具体的日期。1:27表示实际使用CPU的时间,可以看到现在时间(23:00)启动了7个小时,CPU的使用时间为1小时27分。

补充:

**(1)**关于0.3的cpu使用率,我们也可以通过上面的参数计算得到

即CPU的Time的值为1小时27分,而到目前为止总共运行的时间为7个小时,因此,我们大概计算下CPU的平均利用率为:1.5/7=0.214,这与瞬时的0.3大致相吻合。

(2)关于8.9的内存使用率

使用的物理内存为718104Kb,而总的内存我们可以通过free,参数得到:

总的内存为8011936单位是KB,因此,我们可以得到物理内存的使用率:

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

给大家整理的电子书资料:

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值