Linux下如何在程序中关机

买了树莓派为了防止板子温度过高,想写个开机自启程序,当CPU温度超过85℃时自动关机

在论坛上找到一个范例,希望有帮助:

#!/bin/sh
#  This script reads the Broadcom SoC temperature value and shuts down if it 
#  exceeds a particular value.
#  80ºC is the maximum allowed for a Raspberry Pi.

# Get the reading from the sensor and strip the non-number parts
SENSOR="`/opt/vc/bin/vcgencmd measure_temp | cut -d "=" -f2 | cut -d "'" -f1`"
# -gt only deals with whole numbers, so round it.
TEMP="`/usr/bin/printf "%.0f\n" ${SENSOR}`"
# How hot will we allow the SoC to get?
MAX="78"

if [ "${TEMP}" -gt "${MAX}" ] ; then
 # This will be mailed to root if called from cron
 echo "${TEMP}ºC is too hot!"
 # Send a message to syslog
 /usr/bin/logger "Shutting down due to SoC temp ${TEMP}."
 # Halt the box
 /sbin/shutdown -h now
 else
  exit 0
fi

可以调用shutdown命令来关机