如何在 bash 提示符中显示 CPU 温度?

如何在 bash 提示符中显示 CPU 温度?

灵感来自这个答案,我添加了以下代码.bashrc

get_cpu_temperature() {
    CEL=$'\xc2\xb0C'
    temp=$( cat /sys/devices/virtual/thermal/thermal_zone0/temp )
    temp=`expr $temp / 1000`
    echo $temp$CEL
}

PS1="$(get_cpu_temperature) \u@\h:\w\$ "

然而,这个函数似乎只被调用一次,所以温度没有更新。如何在提示中获得更新的温度读数?它不必不断更新;每个提示一次就可以了。

答案1

用于动态PROMPT_COMMAND更新PS1

PROMPT_COMMAND='PS1="$(get_cpu_temperature) \u@\h:\w\$ "'

相关内容