shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Script que gera gráfico da conta telefônica


From: Leslie Harlley Watter
Subject: Script que gera gráfico da conta telefônica
Date: Tue, 20 Jun 2000 23:14:05 -0300 (EST)

Olá povo !!

Como prometido ai vai o script que gera o gráfico da conta telefônica do
mes utilizando o awk e o gnuplot. Consegui chegar em algo usável ...

O arquivo cr.prog é a minha programação do Cron para gerar o arquivo a
cada 2 horas ....

O arquivo r.gnuplot é para especificar os parametros do gnuplot.

O arquivo pulsos.awk gera na saída o dia e o numero de pulsos daquele dia
!! 

E é isso, ai vai a minha contribuição !!!

Optei por não colocar inline pque iria ficar um treco ruim recortar e
colar o script ...

[]'s

Leslie

PS: ainda estou lendo o manual do AWK portanto nenhum código aqui é de
~gente grande~ ;))




-----------------------------------------------------------
Leslie Harlley Watter                address@hidden 

On Windows I always felt limited by software, vendors, etc.
     On UNIX, the only limit I found is my knowledge.
-----------------------------------------------------------

  ----------

set terminal png small color
set linestyle 1 lt 2 lw 2 pt 3 ps 0.5
set grid
set xdata time
set timefmt "%d"
set format x "%d"
set yrange [1:200]
plot "pulsos.dat" using 1:2 with linespoints  lt 3  lw 2  

  ----------

 # MIN HOUR DAY MONTH DAYOFWEEK   COMMAND
20 */2 * * * cat /var/log/messages | grep "Connect time" | gawk -f pulsos.awk  
>pulsos.dat

21 */2 * * * gnuplot /home/leslie/r.gnuplot >/home/leslie/z.png
22 */2 * * * echo "pulsos.dat atualizado"


  ----------

BEGIN{ FS=" "; }

 /Jun/ {
   dia=$2; 
   hora=$3; 
   pulso=$8;
   total+=pulso;

   if (dia == "1"  ) { conta_dia[1] +=pulso;  }
   if (dia == "2"  ) { conta_dia[2] +=pulso;  }
   if (dia == "3"  ) { conta_dia[3] +=pulso;  }
   if (dia == "4"  ) { conta_dia[4] +=pulso;  }
   if (dia == "5"  ) { conta_dia[5] +=pulso;  }  
   if (dia == "6"  ) { conta_dia[6] +=pulso;  }
   if (dia == "7"  ) { conta_dia[7] +=pulso;  }
   if (dia == "8"  ) { conta_dia[8] +=pulso;  }
   if (dia == "9"  ) { conta_dia[9] +=pulso;  }
   if (dia == "10"  ) { conta_dia[10] +=pulso;  }
   if (dia == "11"  ) { conta_dia[11] +=pulso;  }
   if (dia == "12"  ) { conta_dia[12] +=pulso;  }
   if (dia == "13"  ) { conta_dia[13] +=pulso;  }
   if (dia == "14"  ) { conta_dia[14] +=pulso;  }
   if (dia == "15"  ) { conta_dia[15] +=pulso;  }
   if (dia == "16"  ) { conta_dia[16] +=pulso;  }
   if (dia == "17"  ) { conta_dia[17] +=pulso;  }
   if (dia == "18"  ) { conta_dia[18] +=pulso;  }
   if (dia == "19"  ) { conta_dia[19] +=pulso;  }
   if (dia == "20"  ) { conta_dia[20] +=pulso;  }
   if (dia == "21"  ) { conta_dia[21] +=pulso;  }
   if (dia == "22"  ) { conta_dia[22] +=pulso;  }
   if (dia == "23"  ) { conta_dia[23] +=pulso;  }
   if (dia == "24"  ) { conta_dia[24] +=pulso;  }
   if (dia == "25"  ) { conta_dia[25] +=pulso;  } 
   if (dia == "26"  ) { conta_dia[26] +=pulso;  }
   if (dia == "27"  ) { conta_dia[27] +=pulso;  }
   if (dia == "28"  ) { conta_dia[28] +=pulso;  }
   if (dia == "29"  ) { conta_dia[29] +=pulso;  }
   if (dia == "30"  ) { conta_dia[30] +=pulso;  }
   if (dia == "31"  ) { conta_dia[31] +=pulso;  }
   
 }

END { 
   i=1
     while( i < 32 ) {
       if( conta_dia[i] ){
         printf("%2s %s \n",i, conta_dia[i] );
       }
       i++;
     }
}


[Non-text portions of this message have been removed]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]