判断占用系统资源的进程

1.占用大量swap的进程

方法一: for循环

for i in $(cd /proc;ls | grep "^[0-9]" | awk ‘$0>100‘); do awk ‘/Swap:/{a=a+$2}END{print ‘"$i"‘,a/1024"M"}‘ /proc/$i/smaps;done| sort -k2nr | head

会打印出占用swap最多的前十个进程的pid

此原理是统计/proc/$pid/目录下的smaps文件中的swap大小

方法二:iotop

较直观的显示出程序占用swap的情况,但是如果swap达到100%的话,可能直接会被卡死

其他的方法 如 free -m  vmstat top 等,只能看整体的使用量

2.占用大量内存的进程

方法一:ps

ps -eo pid,%mem,command | sort -k2nr | head

方法二:top htop

开top之后,按M 可查看 内存占用最大的程序

3.占用大量CPU的进程

方法一:ps

ps -eo pid,%cpu,command | sort -k2nr | head

方法二:top htop

原文地址:https://www.cnblogs.com/pycode/p/8734308.html

时间: 2024-08-02 08:50:57

判断占用系统资源的进程的相关文章

查找占用内存最大进程所在路径命令

查找占用内存最大进程所在路径 [[email protected] ~]# ll /proc/$(ps aux --sort -pmem | head -2|tail -1|awk '{print$2}')/exe|awk '/exe/{print$NF}' /usr/bin/gnome-shell ps aux --sort -pmem | head -2|tail -1|awk '{print$2}' //查找占用内存最大进程号PID $()引用值 ll /proc/$(ps aux --s

windows查看端口占用、结束进程

在开发中难免会遇到windows的端口被占用,现在我们来查看端口的占用和结束占用端口的进程. win+r 输入cmd进入命令提示符: 比如我们要查看8080端口的占用情况,输入netstat -aon | findstr "8080",注:注意空格: C:\Users\Administrator>netstat -aon | findstr "8080" Proto   Local Address         Foreign Address        

MAC OSX下查看某个端口被哪个程序占用及杀进程方法

sudo lsof -i : 9000 COMMAND   PID    USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME java    61342 a  313u  IPv6 0x1111111111111     0t0  TCP *:cslistener (LISTEN) 然后根据PID杀进程: sudo kill -9 61342 MAC OSX下查看某个端口被哪个程序占用及杀进程方法

Linux查看占用swap的进程脚本

#!/bin/bash ############################################################################### 脚本功能 : 列出正在占用swap的进程.############################################################################### echo -e "PID\t\tSwap\t\tProc_Name" # 拿出/proc目录下所有以数字

端口被占用,查看并杀死占用端口的进程

端口被占用,查看并杀死占用端口的进程 查看占用 netstat –apn | grep 端口号 最后一项(上图红圈处)即为端口号/占用端口的进程的名字 解释: netstat查看网络状态 grep 是搜索 -aux 显示所有状态 杀死进程 例如: kill -9 [PID] -9 表示强迫进程立即停止 原文地址:https://www.cnblogs.com/zealousness/p/8748042.html

找出占用高的进程

1.找出僵尸进程ps -A -ostat,ppid,pid,cmd | grep -e '^[Zz]' -A 参数列出所有进程 -o 自定义输出字段,我们设定显示字段为stat(状态),ppid(父进程pid),pid(进程pid),cmd(命令行)这四个参数因为状态为 z 或者 Z的进程为僵尸进程,所以我们使用grep 抓取stat 状态为zZ进程: 运行后,在此运行ps -A -ostat,ppid,pid,cmd | grep -e '^[Zz]' 来确认是否将僵尸进程杀死:如果kill

windows查看和杀死占用端口的进程

1.首先使用 netstat -ano查看占用端口的进程号 2.然后使用 taskkill /PID (进程号)杀死进程 原文地址:https://www.cnblogs.com/zhuzhaoli/p/10185090.html

八、端口占用,杀死进程

windows环境: 1.netstat -aon | findstr "占用的端口号" 2.通过查询到的PID,查看占用端口的进程 tasklist | findstr "11556" 3.杀死进程 taskkill /pid  11556 linux环境: 原文地址:https://www.cnblogs.com/mason117/p/10498957.html

linux 判断文件被其他进程占用

客户需要将转码器中电视直播频道的hls切片转存出来,在拷贝文件时,需要判断该切片文件是否正在被写入,否则拷贝出来的切片文件不完整. linux下程序fuser有这个功能,源码在psmisc包里,地址:https://gitlab.com/psmisc/psmisc, fuser功能很强大,可以查找文件,目录,网络端口等,我们只用到文件部分 原理是遍历/proc下的进程目录,和fd中的描述符做比较 关键函数如下: 1 static void 2 check_dir(const pid_t pid,