mirror of
https://github.com/Foltik/dotfiles
synced 2024-11-28 05:27:06 -05:00
35 lines
918 B
Bash
Executable File
35 lines
918 B
Bash
Executable File
#!/bin/bash
|
|
|
|
TEMP_DEVICE="${BLOCK_INSTANCE:-Core}"
|
|
TEMP_OUTPUT=$(sensors | grep "${TEMP_DEVICE}")
|
|
|
|
IS_URGENT=0
|
|
|
|
TOTAL_TEMP=0
|
|
TOTAL_COUNT=0
|
|
while read RESULT_LINE; do
|
|
TOTAL_COUNT=$((TOTAL_COUNT +1))
|
|
CURRENT_TEMP=$(echo "${RESULT_LINE}" | grep -o -E "[\+\-]?[0-9]*.[0-9]*°C" | sed -n '1p' | tr -d '+°C')
|
|
URGENT_VALUE=$(echo "${RESULT_LINE}" | grep -o -E "[\+\-]?[0-9]*.[0-9]*°C" | sed -n '2p' | tr -d '+°C')
|
|
|
|
TOTAL_TEMP=$(echo "scale=2;${TOTAL_TEMP}+${CURRENT_TEMP}" | bc -l)
|
|
IS_CRITICAL=$(echo "scale=0;${CURRENT_TEMP}-${URGENT_VALUE} >= 0" | bc -l)
|
|
|
|
if [[ "${IS_CRITICAL}" -eq 1 ]]; then
|
|
IS_URGENT=1
|
|
fi
|
|
done <<< "$(echo -e "$TEMP_OUTPUT")"
|
|
|
|
AVERAGE_TEMP=$(echo "scale=0;${TOTAL_TEMP}/${TOTAL_COUNT}" | bc -l)
|
|
|
|
if [[ "${TOTAL_COUNT}" -gt 1 ]]; then
|
|
AVERAGE_TEMP="~ ${AVERAGE_TEMP}"
|
|
fi
|
|
|
|
echo "${AVERAGE_TEMP}°C"
|
|
echo "${AVERAGE_TEMP}°C"
|
|
echo ""
|
|
|
|
if [[ "${IS_URGENT}" -eq 1 ]]; then
|
|
exit 33
|
|
fi |