>[оверквотинг удален]
> теперь график у меня рисуется. Но вот датчик температуры ыдает строковый параметр:
> ms#sysctl -a | grep dev.cpu.0.temperature | awk '{print $2}'
> ms#52.0C
> ОС стоит FreeBSD 8.0
> сделал так:
> t_cpu0=`sysctl -a |grep dev.cpu.0.temperat | awk '{printf "%.2s", $2}'`
> term_cpu0=`expr $t_cpu0 + 0`
> Но вот в базу теперь пишется всегда нуль.
> Подскажите как бы перевести строковое значение в цифру без потери значения.
> Из строковой 52.0С сделать цифру 52 ?Найденое решение:
#!/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin
term_cpu0=`sysctl dev.cpu.0.temperature | awk '{printf "%.2s", $2}'`
sleep 1
term_cpu1=`sysctl dev.cpu.1.temperature | awk '{printf "%.2s", $2}'`
sleep 1
term_cpu2=`sysctl dev.cpu.2.temperature | awk '{printf "%.2s", $2}'`
sleep 1
term_cpu3=`sysctl dev.cpu.3.temperature | awk '{printf "%.2s", $2}'`
/usr/local/bin/rrdtool update /usr/local/rrdtermal/termdb/termal.rrd N:$term_cpu0:$term_cpu1:$term_cpu2:$term_cpu3
export LANG=KOI8-R
export LC_ALL=ru_RU.KOI8-R
RRDPREFIX=/usr/local/rrdtermal/termdb
WWWPREFIX=/usr/local/www/rrdtool/images
/usr/local/bin/rrdtool graph $WWWPREFIX/termal.png \
--width 750 \
--height 150 \
--imgformat PNG \
--title="Temperature CPUx `date +%d.%m.%Y-%H:%M:%S`" \
--start -48h \
--end now-30s \
--vertical-label="Celsium" \
DEF:term_0=/usr/local/rrdtermal/termdb/termal.rrd:term_cpu0:LAST \
CDEF:cterm_0=term_0,1,/\
DEF:term_1=$RRDPREFIX/termal.rrd:term_cpu1:LAST \
CDEF:cterm_1=term_1,1,/\
DEF:term_2=$RRDPREFIX/termal.rrd:term_cpu2:LAST \
CDEF:cterm_2=term_2,1,/\
DEF:term_3=$RRDPREFIX/termal.rrd:term_cpu3:LAST \
CDEF:cterm_3=term_3,1,/\
LINE1:term_0#FFFFFF \
LINE1:term_1#cccccc \
LINE1:term_2#333333 \
LINE1:term_3#2f2f2f \
GPRINT:term_0:LAST:"Last CPU-0 %8.2lf %s" \
GPRINT:term_1:LAST:"Last CPU-1 %8.2lf %s" \
GPRINT:term_2:LAST:"Last CPU-2 %8.2lf %s" \
GPRINT:term_3:LAST:"Last CPU-3 %8.2lf %s" \
COMMENT:"Processor 0" \
GPRINT:term_0:MAX:"Max CPU-0 %8.2lf %s" \
GPRINT:term_1:MAX:"Max CPU-1 %8.2lf %s" \
GPRINT:term_2:MAX:"Max CPU-2 %8.2lf %s" \
GPRINT:term_3:MAX:"Max CPU-3 %8.2lf %s" \
COMMENT:"Processor 1" \
GPRINT:term_0:AVERAGE:"Avg CPU-0 %8.2lf %s" \
GPRINT:term_1:AVERAGE:"Avg CPU-1 %8.2lf %s" \
GPRINT:term_2:AVERAGE:"Avg CPU-2 %8.2lf %s" \
GPRINT:term_3:AVERAGE:"Avg CPU-3 %8.2lf %s" \
COMMENT:"Processor 2" \
GPRINT:term_0:MIN:"Min CPU-0 %8.2lf %s" \
GPRINT:term_1:MIN:"Min CPU-1 %8.2lf %s" \
GPRINT:term_2:MIN:"Min CPU-2 %8.2lf %s" \
GPRINT:term_3:MIN:"Min CPU-3 %8.2lf %s" \
COMMENT:"Processor 3" \
Теперь график рисуется. Из этого скрипта есть выгрузка ещё в файлик(строка удалена здесь) и если температура превышает какието предельные значение мне(и ещё кой кому) на телефон летит смс-ка.