
#!/bin/bash
LOG_DIR="$HOME/.sensor-monitor"
LOG_FILE="sensor-monitor.log"
CHECK_TIME="300" # seconds
function log_temp() {
if [ -n "$1" ]; then
echo `date "+[%d %B %Y %H:%M:%S]"` $1 >> $LOG_DIR/$LOG_FILE
fi
}
if [[ "$1" = "--daemon" || "$1" = "-d" ]]; then
log_temp "···································"
log_temp "Iniciando en segundo plano"
$0 > /dev/null 2>&1 &
exit 0
fi
if [ ! -d "$LOG_DIR" ]; then
mkdir $LOG_DIR
fi
while(true)
do
ACPI_TEMP=`cat /proc/acpi/thermal_zone/THRM/temperature | sed s/" C"/,0°C/ | awk '{print $2}'`
CORE_TEMP=`sensors | grep "Core 0" | awk '{print $3}' | sed s/+//`
VIDEO_TEMP_ATI=`aticonfig --pplib-cmd "get temperature 0" | awk '{print $7}' | sed -e s/00000// -e s/[.]/,/`
VIDEO_TEMP_NVIDIA=`nvidia-settings -q gpucoretemp | grep '):' | awk '{print $4}' | sed s/" C"/,0°C/`
log_temp "···································"
if [ -n "$ACPI_TEMP" ]; then log_temp "$ACPI_TEMP (Temperatura ACPI)"; fi
if [ -n "$CORE_TEMP" ]; then log_temp "$CORE_TEMP (Temperatura del Procesador)"; fi
if [ -n "$VIDEO_TEMP_ATI" ]; then log_temp "$VIDEO_TEMP_ATI°C (Temperatura de la Gráfica)"; fi
if [ -n "$VIDEO_TEMP_NVIDIA" ]; then log_temp "$VIDEO_TEMP_NVIDIA (Temperatura de la Gráfica)"; fi
sleep $CHECK_TIME
done