APC Access Temperature Query and Conversion. (1 of 2)
This week I present to you; dearest reader part of a script I wrote to monitor the temperature on APC brand UPS’s. The script requires the apcupsd package to be installed and properly configured.
Here is the script:
#!/bin/bash
f () {
echo $(echo “($(/usr/sbin/apcaccess | grep ITEMP | cut -d : -f 2 | cut -d \ -f 2)*1.8)+32″ | bc);
}c () {
echo “$(/usr/sbin/apcaccess | grep ITEMP | cut -d : -f 2 | cut -d \ -f 2)”
}case “$1″ in
c)
c
;;
f)
f
;;
b)
echo “$(/usr/sbin/apcaccess | grep ITEMP | cut -d : -f 2 | cut -d \ -f 2)” C
echo $(echo “($(/usr/sbin/apcaccess | grep ITEMP | cut -d : -f 2 | cut -d \ -f 2)*1.8)+32″ | bc) F;
;;
*)
echo $”Usage $0 {f|c|b}”
;;
esac
The script uses basic bash, grep, cut and bc. It requires only one input, and that is f, c or b. f for Fahrenheit, c for Celsius and b for both. The second part of the script is a cron, with some more basic bash. It write a log and e-mails me if the temperature goes over a certain threshold, and it e-mails me again once the temperature has been resumed. I will post the cron script next week as it is a major portion. The tricky part of the cron was making it e-mail me only once.
Until next time, Happy Scripting!















