获取CPU平均主频的非sudo命令及一行命令求平均值方法咨询
获取CPU平均主频的非sudo命令及一行命令求平均值方法咨询
嘿,我之前也碰到过类似的需求,给你几个好用的解决方案:
一行命令直接计算/proc/cpuinfo的主频平均值
不用额外多做grep步骤,用awk就能一步到位,直接算出所有核心的平均主频:
awk '/cpu MHz/ {sum += $4; count++} END {print sum/count " MHz"}' /proc/cpuinfo
这个命令会自动遍历/proc/cpuinfo里所有带cpu MHz的行,累加每个核心的主频数值,最后除以核心数量得到平均值,输出结果简洁直接,非常适合嵌入到你的通知脚本里。
另一个非sudo工具:cpufreq-info
如果你的系统没装这个工具,先通过包管理器安装(比如Debian/Ubuntu用apt install cpufrequtils,RHEL/CentOS用dnf install cpufrequtils),它不需要sudo权限,能输出更规整的CPU频率信息,同样可以用来计算平均:
cpufreq-info -o | awk '{sum += $4; count++} END {print sum/count " MHz"}'
搭配通知工具的小技巧
要是想直接把结果塞进系统通知里,比如用notify-send,可以把命令嵌套进去,一行搞定:
notify-send "当前系统信息" "CPU平均主频: $(awk '/cpu MHz/ {sum += $4; count++} END {print sum/count " MHz"}' /proc/cpuinfo)"
你还可以在这个基础上加上其他信息,比如内存使用率、磁盘剩余空间之类的,拼成完整的系统状态通知。
备注:内容来源于stack exchange,提问作者enrico223
相关产品推荐
相关产品推荐

