daily pastebin goal
41%
SHARE
TWEET

Untitled

a guest Jun 10th, 2010 189 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #!/bin/bash
  2. # hddtemp monitor logs
  3. # v5 ... new grep method
  4.  
  5. ### VAR
  6.  
  7.       d="/dev/sd"
  8. SUBJECT="homeNAS HDD temps"                     ## subjectigate
  9.   EMAIL="MYEMAIL@gmail.com"
  10.     log=/home/zosky/.bin/hddtemp.log
  11.    tlog=/home/zosky/.bin/hddtemp.log.temp
  12. warning=45
  13.  danger=55
  14.  
  15. ## write new hour
  16. echo $(grep "hdd.temp" $log)'|'$(date +%M) > $tlog
  17.  
  18. ## grep info and split into lines
  19. ## loop with each letter,
  20. ## ,,. for its temp
  21. ## ... highlight RED if too HOT (-ge $DANGER )
  22. ## ... highlight YELLOW if HOT (-ge $WARNING )
  23. ## ... write to tLOG
  24. ## replace log
  25.  
  26. stat=$(nc localhost 7634 | sed -e 's/||/\n/g')
  27. for i in $(echo {a..h}) ;
  28.   do
  29.     n=$(echo "$stat" | grep ${d}${i} | cut -d\| -f 3)
  30.     if [ ! -z $n ] ; then
  31.         if [ $n -ge $danger ] ; then
  32.               n='<span style="background-color:red">'$n'</span>'
  33.       elif [ $n -ge $warning ] ; then
  34.               n='<span style="background-color:yellow">'$n'</span>'
  35.         fi
  36.       echo $(grep ${d}${i} $log)'|'$n >> $tlog
  37.     fi
  38.   done
  39.  
  40. ### copy not MOVE
  41. mv $tlog $tlog
  42.  
  43. ### email & start new log at 10am
  44.    if [ $(date +%H) == 10 ] ; then
  45.       while read line
  46.         do
  47.           echo $line'</td></tr><tr><td>' >> $tlog # make row for each line </tr><tr>
  48.         done < $log
  49.         sed -i "s/|/\<\/td\>\<td\>/g" $tlog ## replace | with cells </td><td>
  50.         echo '<html><body><table><tr><td>'$(cat $tlog)'</table></body></html>' > $tlog
  51.         mail -a 'Content-Type: text/html' -s "$SUBJECT" "$EMAIL" < $tlog
  52.     echo -e '\nhdd.temp\n/dev/sda\n/dev/sdb\n/dev/sdc\n/dev/sdd\n/dev/sde\n/dev/sdf\n/dev/sdg\n/dev/sdh' > $log
  53.    fi
RAW Paste Data
Top