cod*_*ogn 35 memory centos cpanel
我正在尝试使用 Linux 命令按百分比检索已用内存(RAM)。我的 cpanel 显示了我需要在特定网页上显示的已用内存。
从论坛中,我发现可以从以下内容中找到正确的内存:
free -m
Run Code Online (Sandbox Code Playgroud)
结果:
-/+ buffers/cache: 492 1555
Run Code Online (Sandbox Code Playgroud)
-/+ 缓冲区/缓存:包含正确的内存使用情况。我不知道如何解析这个信息,或者是否有任何不同的命令来获取按百分比使用的内存。
cas*_*sey 38
这是免费的示例输出:
% free
total used free shared buffers cached
Mem: 24683904 20746840 3937064 254920 1072508 13894892
-/+ buffers/cache: 5779440 18904464
Swap: 4194236 136 4194100
Run Code Online (Sandbox Code Playgroud)
第一行数字 ( Mem:
) 列出
total
记忆used
记忆free
记忆shared
buffers
cached
)在这一行中used
包括缓冲区和缓存,这会影响免费。这不是您的“真正”空闲内存,因为如果需要满足分配请求,系统将转储缓存。
下一行 ( -/+ buffers/cache:
) 为我们提供了实际使用的和空闲的内存,就好像没有缓冲区或缓存一样。
最后一行 ( Swap
) 给出了交换内存的使用情况。没有用于交换的缓冲区或缓存,因为将这些东西放在物理磁盘上是没有意义的。
要输出已用内存(减去缓冲区和缓存),您可以使用如下命令:
% free | awk 'FNR == 3 {print $3/($3+$4)*100}'
23.8521
Run Code Online (Sandbox Code Playgroud)
这将抓取第三行并除以 used/total * 100。
对于空闲内存:
% free | awk 'FNR == 3 {print $4/($3+$4)*100}'
76.0657
Run Code Online (Sandbox Code Playgroud)
Ram*_*esh 10
我将提到如何解析free
命令上的信息。要找到百分比,您可以按照其他 2 个答案中的建议使用。
这在此处得到了明确解释。我会尝试从我系统中的内容来解释。
free -m
total used free shared buffers cached
Mem: 7869 4402 3466 0 208 3497
-/+ buffers/cache: 696 7173
Swap: 3999 216 3783
Run Code Online (Sandbox Code Playgroud)
现在,让我们看看各种数字实际上代表什么。
1号线
2号线
-/+ buffers/cache: 696 7173
Run Code Online (Sandbox Code Playgroud)
如何计算 Line2 中得到的值 696 和 7173?
Total used ( 4402 ) - Total buffer RAM ( 208 ) - Total RAM for caching ( 3497 ) 应该构成系统中实际使用的 RAM。它返回697,这是第二行中实际使用的 RAM输出。
现在,Total Available ( 7869 ) - Actual Used ( 696 ) 应该为您提供可用内存,在这种情况下为7173,它也作为第二行的输出获得。
虽然一式两份由@szboardstretcher尖,从解决方案(原题)我的偏好是下面的一个,特别是因为要分析一个网页。
$ free | awk '/Mem/{printf("used: %.2f%"), $3/$2*100} /buffers\/cache/{printf(", buffers: %.2f%"), $4/($3+$4)*100} /Swap/{printf(", swap: %.2f%"), $3/$2*100}'
Run Code Online (Sandbox Code Playgroud)
输出:
used: 82.68%, buffers: 42.81%, swap: 1.27%
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
103706 次 |
最近记录: |