我家里用的是HPZ800的服务器, 所以长年不关机不重启, 今天我看了CHROME好吃内存:
在 Processes 页, 操作系统列出了每个程序的吃内存情况, 我们可以看到CHROME很吃内存.
然而, 我想着写一个小命令行工具, 练练手.
Github: https://github.com/DoctorLai/BatchUtils/blob/master/mem.cmd
@echo off REM Calculate Total Memory Consumption for a Process setlocal enabledelayedexpansion set prog=%1 if [%1]==[] ( echo Usage: %0 Process goto end ) set sum=0 @for /F "tokens=5" %%i in ('tasklist ^| grep !prog!') do ( set mem=%%i set mem=!mem:,=! set /a sum=sum+!mem! ) echo Total Memory for !prog! is !sum! K set /a sum=sum/1024 echo Total Memory for !prog! is !sum! MB set /a sum=sum/1024 echo Total Memory for !prog! is !sum! GB :end
原理就是用 for /f 来对每一行的输出进行字符串分割, tokens=5 会只选择第五列, 也就是内存用量.
我们需要用 !variable:,=! 来把数字中的逗号去掉, 然后用 set /a 来进行数字叠加, 最后面我们需要启用 setlocal enabledelayedexpansion 在WINDOWS批处理中开启变量支持 – 否则变量只会在批处理启动的时候替换一次.
在LINUX下我们就不需要这么麻烦了, 因为已经有很多现成好用的工具, 比如 wc, awk, cut 这些命令可以通过管道来完成同样的任务.
英文: Introducing the Batch Utility for Windows – mem.cmd
Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz
我用那 Mini PC 小电脑, 一开多个Chrome标签窗口就慢得狠.
而且Chrome浏览器还卡死了, 所以只能用 taskkill /im:chrome.exe /f 来终止所有Chrome窗口进程.
CPU
Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz
Base speed: 2.30 GHz
Sockets: 1
Cores: 4
Logical processors: 8
Virtualization: Enabled
L1 cache: 256 KB
L2 cache: 1.0 MB
L3 cache: 6.0 MBUtilization 64%
Speed 3.50 GHz
Up time 3:06:37:14
Processes 414
Threads 5212
Handles 2792388
强烈推荐
- 英国代购-畅购英伦
- TopCashBack 返现 (英国购物必备, 积少成多, 我2年来一共得了3000多英镑)
- Quidco 返现 (也是很不错的英国返现网站, 返现率高)
- 注册就送10美元, 免费使用2个月的 DigitalOcean 云主机(性价比超高, 每月只需5美元)
- 注册就送10美元, 免费使用4个月的 Vultr 云主机(性价比超高, 每月只需2.5美元)
- 注册就送10美元, 免费使用2个月的 阿里 云主机(性价比超高, 每月只需4.5美元)
- 注册就送20美元, 免费使用4个月的 Linode 云主机(性价比超高, 每月只需5美元) (折扣码: PodCastInit2022)
- PlusNet 英国光纤(超快, 超划算! 用户名 doctorlai)
- 刷了美国运通信用卡一年得到的积分 换了 485英镑
- 注册就送50英镑 – 英国最便宜最划算的电气提供商
- 能把比特币莱特币变现的银行卡! 不需要手续费就可以把虚拟货币法币兑换
微信公众号: 小赖子的英国生活和资讯 JustYYUK