gpt4 book ai didi

bash awk 整数

转载 作者:行者123 更新时间:2023-12-04 19:28:59 25 4
gpt4 key购买 nike

我想使用 top 将 RAM 使用量作为总 RAM 的百分比吐出.我到目前为止的脚本是

top -l 1 |
awk '/PhysMem/ {
print "RAM\nwired:" $2/40.95 "% active:" $4/40.95 "% inactive:" $6/40.95 "% free:" $10/40.95 "%"
}'

我有 4gb RAM,因此除以 40.95,所以这个脚本吐出的东西看起来像:
RAM
wired:16.1172% active:46.2759% inactive:8.79121% free:28.8156%

我只希望它显示小数点后 1 位的百分比,我不知道该怎么做。我研究过使用 bc但我总是收到非法语句错误。任何想法如何将其四舍五入到 awk 中的小数点后第 1 位?

最佳答案

使用 awk 有几种方法可以做到这一点:

... | awk '{ print $2/40.95 }' OFMT="%3.1f"

... | awk '{ printf( "%3.1f\n", $2/40.95 )}'

每个使用输出格式 %3.1f处理舍入。所以你需要做的就是添加参数 OFMT="%3.1f"到你的 awk 电话。 (或者您可能更喜欢 %0.1f 的格式,3 只是给出了最小宽度;典型的格式字符串规则适用。)

关于bash awk 整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68516639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com