如何在每次执行时刷新别名

如何在每次执行时刷新别名

我有这个别名来检查我的 Raspberry Pi 的温度:

gpu=$(/opt/vc/bin/vcgencmd measure_temp | awk -F "[= \']" '{print $2}')

cpu=$(</sys/class/thermal/thermal_zone0/temp)

cpu=$(echo "$cpu / 100 * 0.1" | bc)

cpuf=$(echo "(1.8 * $cpu) + 32" | bc)

gpuf=$(echo "(1.8 * $gpu) + 32" | bc)

alias temp="echo \"CPU => $cpuf 'F\" && echo \"GPU => $gpuf 'F\""

它运行的是 Ubuntu Mate 16.04。它运行良好,但是当我想检查温度时,我必须关闭已打开的终端并打开一个新终端。例如,当我temp在终端中执行一次后,它会存储该数据,直到我关闭并重新打开终端。我希望有一种方法可以在每次执行时刷新别名。这个别名位于/etc/bash.bashrc中,谢谢!

答案1

听起来它更适合作为一个函数。 (它也可以/应该添加到您的 bashrc 中并模拟一个简单的命令,就像别名一样):

temp () {
    gpu=$(/opt/vc/bin/vcgencmd measure_temp | awk -F "[= \']" '{print $2}')
    cpu=$(</sys/class/thermal/thermal_zone0/temp)
    cpu=$(bc <<<"$cpu / 100 * 0.1")
    cpuf=$(bc <<<"(1.8 * $cpu) + 32")
    gpuf=$(bc <<<"(1.8 * $gpu) + 32")

    echo -e "CPU => $cpuf °F\nGPU => $gpuf °F"
}

相关内容