Bash 计算G1GC中的总堆大小

Bash 计算G1GC中的总堆大小,bash,shell,awk,sed,cut,Bash,Shell,Awk,Sed,Cut,在下面的示例中,如何使用shell脚本读取G1 Heap used变量。我尝试使用awk,但运气不佳 jmap-堆 Heap Usage: G1 Heap: regions = 2048 capacity = 8589934592 (8192.0MB) used = 4976717264 (4746.167434692383MB) free = 3613217328 (3445.832565307617MB) 57.93661419302225% used G1 Young

在下面的示例中,如何使用shell脚本读取G1 Heap used变量。我尝试使用awk,但运气不佳

jmap-堆

Heap Usage:
G1 Heap:
regions  = 2048
capacity = 8589934592 (8192.0MB)
used     = 4976717264 (4746.167434692383MB)
free     = 3613217328 (3445.832565307617MB)
57.93661419302225% used

G1 Young Generation:
Eden Space:
regions  = 234
capacity = 3854565376 (3676.0MB)
used     = 981467136 (936.0MB)
free     = 2873098240 (2740.0MB)
25.462459194776933% used
Survivor Space:
regions  = 14
capacity = 58720256 (56.0MB)
 used     = 58720256 (56.0MB)
free     = 0 (0.0MB)
100.0% used

G1 Old Generation:
regions  = 941
capacity = 4676648960 (4460.0MB)
used     = 3936529872 (3754.167434692383MB)
free     = 740119088 (705.8325653076172MB)
84.17415772852877% used

你能试试下面的吗。我使用的是
exit
,因此,当为
堆使用情况找到第一个匹配项,然后找到使用的字符串
的第一个匹配项时,它将打印请求的值并立即从程序中退出,因此速度也会更快

awk '/Heap Usage:/{found=1;next} found && /used/{print $3;exit}'  Input_file

你能试试下面的吗。我使用的是
exit
,因此,当为
堆使用情况找到第一个匹配项,然后找到使用的字符串
的第一个匹配项时,它将打印请求的值并立即从程序中退出,因此速度也会更快

awk '/Heap Usage:/{found=1;next} found && /used/{print $3;exit}'  Input_file

你能检查我的解决方案一次,让我知道这是否对你有帮助吗?你能检查我的解决方案一次,让我知道这是否对你有帮助吗?