Linux ps命令详解,Linux查看进程_linux ps查看进程
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
「作者主页」士别三日wyx
「作者简介」CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
ps命令详解
作用查看系统进程比如正在运行的进程有哪些什么时候开始运行的哪个用户运行的占用了多少资源。
参数
- -e 显示所有进程
- -f 显示所有字段UIDPPIPCSTIME字段
- -a 显示一个终端的所有进程
- -u 显示当前用户进程和内存使用情况
- -x 显示没有控制终端的进程
- –sort 按照列名排序
一、常用操作
ps命令常用的方式有三种
ps -ef
查看所有进程ps -aux
查看所有进程ps -ef | grep tomcat
查看指定进程
1、查看所有进程连带命令行
ps -ef
字段解释
- UID用户ID即进程的拥有者
- PID进程ID
- PPID父进程ID
- C进程占用的CPU百分比
- STIME进程开始启动时间
- TTY登入者的终端机位置
- TIME进程使用的CPU运算时间
- CMD调用进程的命令
2、显示所有包含其他使用者的进程
ps -aux
字段解释
- USER创建进程的用户
- PID进程ID
- %CPU进程占用CPU的百分比
- %MEM进程占用物理内存的百分比
- VSZ进程占用虚拟内存的大小单位KB
- RSS进程占用实际物理内存的大小单位KB
- TTY进程在哪个终端运行。
- STAT进程状态
- START进程开始启动的时间
- TIME进程使用的CPU运算时间
- COMMAND调用进程的命令
3、查看指定进程grep过滤
ps -ef
通常会配合 grep
来过滤指定的进程比如
搜索 mysql 的进程ps -ef | grep mysql
搜索 tomcat 的进程ps -ef | grep tomcat
4、查看CPU/内存占用率最高的进程
1查看进程的时候让进程按照CPU使用率排序然后展示前10行就能清晰地看到哪些进程占用的资源比较多。
PS1head -11
是因为标题也算一行
PS2+
、-
号可以调整排序-pcpu
表示降序+pcpu
表示升序
ps -aux --sort=-pcpu | head -11
2同理把 -pcpu
换成 -pmem
就能查看内存使用最多的10个进程。
ps -aux --sort=-pmem | head -11
3如果不限制行数也可以使用 sort
按照指定的列排序
降序
ps -aux | sort -nk 4 -r
升序
ps -aux | sort -nk 4
5、查看指定用户的进程
查看某个用户开启了哪些进程可以使用 -u
参数指定用户名比如查看root用户的进程有哪些
ps -u root -ef
6、分页查看进程
除了 grep 外还可以配合 more 分页查看进程ps -ef | more
翻页的操作同 more 命令q键退出空格键翻页
二、拓展
1、TTY字段终端类型
TTY字段表示运行进程的终端是哪个这里的终端类型有两种tty和pts。
- tty表示物理终端其中
tty1~6
是本地字符界面终端tty7
是本地图形终端 - pts表示虚拟终端通常指远程连接的终端范围是
pts/0~255
比如第一个远程连接的终端是pts/0
第二个远程连接的终端是pts/1
依次类推。
2、STAT字段进程状态
STAT字段表示进程的状态常见的状态有以下几种
- D睡眠状态不可被唤醒常用于I/O情况。
- R进程正在运行
- S睡眠状态可被唤醒
- T停止状态
- W内存交互状态
- Z僵尸进程不存在但暂时无法消除
- <高优先级
- N低优先级
- L被锁入内存
- s包含子进程
- l多线程
- +位于后台
3、僵尸进程
进程由于非正常停止或程序编写错误导致子进程比父进程先结束而父进程又没有正常回收子进程使子进程一直在内存中导致资源浪费。这种情况就是僵尸进程。
PS正常情况下应该是父进程先结束然后子进程由init接管init 结束子进程并回收对应的资源。