#!/bin/bash # Run sensors command and store the output sensors_output=$(sensors) # Extract temperatures for each CPU and find the highest for each cpu1_temps=$(echo "$sensors_output" | awk '/coretemp-isa-0000/ {p=1} /coretemp-isa-0001/ {p=0} p' | awk '/Core/ {print $3}' | sort -n | tail -n 1) cpu2_temps=$(echo "$sensors_output" | awk '/coretemp-isa-0001/ {p=1} /i350bb-pci-0103/ {p=0} p' | awk '/Core/ {print $3}' | sort -n | tail -n 1) # Strip out the + and degree symbol from temperatures cpu1_temp_value=$(echo "$cpu1_temps" | tr -d '+°' | awk -F '.' '{print $1}') cpu2_temp_value=$(echo "$cpu2_temps" | tr -d '+°' | awk -F '.' '{print $1}') # Determine the status code based on temperature thresholds if [ "$cpu1_temp_value" -ge 95 ] || [ "$cpu2_temp_value" -ge 95 ]; then status_code=4 elif [ "$cpu1_temp_value" -ge 90 ] || [ "$cpu2_temp_value" -ge 90 ]; then status_code=3 elif [ "$cpu1_temp_value" -ge 80 ] || [ "$cpu2_temp_value" -ge 80 ]; then status_code=2 elif [ "$cpu1_temp_value" -ge 70 ] || [ "$cpu2_temp_value" -ge 70 ]; then status_code=1 else status_code=0 fi # Format the final output echo "CPU0: ${cpu1_temp_value} | CPU1: ${cpu2_temp_value}"