SHARE
TWEET
Untitled
a guest
Jun 10th, 2010
189
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
- #!/bin/bash
- # hddtemp monitor logs
- # v5 ... new grep method
- ### VAR
- d="/dev/sd"
- SUBJECT="homeNAS HDD temps" ## subjectigate
- EMAIL="MYEMAIL@gmail.com"
- log=/home/zosky/.bin/hddtemp.log
- tlog=/home/zosky/.bin/hddtemp.log.temp
- warning=45
- danger=55
- ## write new hour
- echo $(grep "hdd.temp" $log)'|'$(date +%M) > $tlog
- ## grep info and split into lines
- ## loop with each letter,
- ## ,,. for its temp
- ## ... highlight RED if too HOT (-ge $DANGER )
- ## ... highlight YELLOW if HOT (-ge $WARNING )
- ## ... write to tLOG
- ## replace log
- stat=$(nc localhost 7634 | sed -e 's/||/\n/g')
- for i in $(echo {a..h}) ;
- do
- n=$(echo "$stat" | grep ${d}${i} | cut -d\| -f 3)
- if [ ! -z $n ] ; then
- if [ $n -ge $danger ] ; then
- n='<span style="background-color:red">'$n'</span>'
- elif [ $n -ge $warning ] ; then
- n='<span style="background-color:yellow">'$n'</span>'
- fi
- echo $(grep ${d}${i} $log)'|'$n >> $tlog
- fi
- done
- ### copy not MOVE
- mv $tlog $tlog
- ### email & start new log at 10am
- if [ $(date +%H) == 10 ] ; then
- while read line
- do
- echo $line'</td></tr><tr><td>' >> $tlog # make row for each line </tr><tr>
- done < $log
- sed -i "s/|/\<\/td\>\<td\>/g" $tlog ## replace | with cells </td><td>
- echo '<html><body><table><tr><td>'$(cat $tlog)'</table></body></html>' > $tlog
- mail -a 'Content-Type: text/html' -s "$SUBJECT" "$EMAIL" < $tlog
- 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
- fi
RAW Paste Data
