Re: connecter ou pas connecter, that"s the question...

トップ ページ

このメッセージに返信
著者: Benoit FRIRY
日付:  
To: guilde
題目: Re: connecter ou pas connecter, that"s the question...
> Je cherche à écrire un script qui me calcule et archive mes temps de
> connexion (en Perl). Pour cela, j'ai besoin de savoir ce qui
> caractérise qu'une machine est ou n'est pas connectée...


j'ai trouve des messages interessants dans /var/log/messages, du genre :

Nov 22 23:33:21 benbox pppd[7887]: Terminating on signal 15.
Nov 22 23:33:21 benbox pppd[7887]: Connection terminated.
Nov 22 23:33:21 benbox pppd[7887]: Connect time 84.4 minutes.
Nov 22 23:33:21 benbox pppd[7887]: Sent 708976 bytes, received 5268719
bytes.
Nov 22 23:33:21 benbox pppd[7887]: Exit.

en tout cas ça marche pour ppp0 !

> PS: cela dit, si Perl n'est pas idéal, je veux bien changer mais je
> préfèrerai un langage de script, par paresse ;-)


je l'ai fait avec un melange shell-script / C :

le script fait la recherche, et le C le calcul de la somme flottante (ya
surement plus simple, mais j'avais pas envie de chercher...)

le script :
-----------

#!/bin/sh

LISTE=`gawk 'BEGIN {ORS=" "} /Jan/ && /pppd/ && /Connect time/ {print
$8}' /var/log/messages`

echo `sommeflottante $LISTE`

le source C:
------------
int main(int argc, char *argv[])
{
float val,res;
int i;

res = 0;

  for (i=1 ; i < argc ; i++)
    {
      sscanf(argv[i],"%f",&val);
      res += val;
    }


printf("%d heures %d minutes\n",(int)res / 60,(int)res % 60);

return 0;
}


c'est pas dur !

deux problèmes :
1) ça ne répond correctement qu'une fois que pppd a "raccroché"
2) j'ai remarqué une légère différence avec le décompte calculé par
wanadoo : ils trouvent plus que moi... soit ils trichent, soit ils
commencent à compter avant la négociation du protocole ou ce genre de
trucs.


tchao !


--
Benoit FRIRY
élève ingénieur à l'ENSIMAG
email : benoit.friry@???