物理 RAM 问题的答案是:
sudo dmidecode -t 17 | grep "Size.*MB" | awk '{s+=$2} END {print s / 1024 "GB"}'
上述代码给出了正确答案:这台装有 Unbutu 20.04.3 的电脑上有 8GB
请解释一下原因?
此dmidecode
命令使用“MB:
sudo dmidecode -t 17 | grep "Size.*MB"
Size: 2048 MB
Size: 2048 MB
Size: 2048 MB
Size: 2048 MB
dmidecode
该命令使用“Size”搜索,一共有 5 条记录(5 行) :
sudo dmidecode -t 17 | grep "Size"
Size: 2048 MB
Size: 2048 MB
Size: 2048 MB
Size: 2048 MB
Size: 4096 kB
共有 0 条记录 (零),其中:
sudo dmidecode -t 17 | grep "Size**MB"
sudo dmidecode -t 17 | grep "Size*MB"
sudo dmidecode -t 17 | grep "Size.?MB"
sudo dmidecode -t 17 | grep "Size. MB"
sudo dmidecode -t 17 | grep "Size??MB"
sudo dmidecode -t 17 | grep "Size???MB"
sudo dmidecode -t 17 | grep "Size????MB"
有人可以解释一下我们如何获得 4 条记录吗:
sudo dmidecode -t 17 | grep "Size.*MB"
这 4 条记录正确显示了 4 条内存条,每条内存条 2048 MB。
然后 awk 加法正确给出:
8192MB = 2048+2048+2048+2048
然后 awk 除以 1024 我们得到 8GB。
.*
有人能解释一下上面的人物在做什么吗?