Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- interval=5
- intervalLong=300
- function getSensors {
- sensors | awk 'BEGIN {FS=":? +"} /^Core|^fan[12]|^temp/ {printf "%9s %9s\n", $1, $2}'
- }
- function getDiskfree {
- df -hP | sort -rnk5 | awk '/[89][0-9]%|100%/ {printf "%9s %9s %s\n", $4, $5, $6}'
- }
- function getHddtemp {
- hddtemp /dev/sda /dev/sdb | awk 'BEGIN {FS=": "} // {printf "%9s %9s %s\n", $1, $3, $2}' 2>/dev/null
- }
- function outRefresh {
- echo -e "\n\n\n\n\n\n\n\n\n\n\n"
- echo "$outSensors"
- echo
- echo "$outDiskfree"
- if [ ${#outHddtemp} -gt 0 ]; then
- echo
- echo "$outHddtemp"
- fi
- echo
- echo -n "$(uptime)"
- }
- function trapInt {
- outSensors=$(getSensors)
- outDiskfree=$(getDiskfree)
- outHddtemp=$(getHddtemp)
- outRefresh
- echo -ne "\nPress ^C again quickly to quit"
- trap SIGINT
- sleep 1
- trap trapInt SIGINT
- }
- trap trapInt SIGINT
- while true; do
- outDiskfree=$(getDiskfree)
- outHddtemp=$(getHddtemp)
- for (( i=0 ; i<$(($intervalLong/$interval + 1)) ; i++ )); do
- outSensors=$(getSensors)
- outRefresh
- sleep $interval
- done
- done
Add Comment
Please, Sign In to add comment