Bonjour, je dois pour un exercice de prog en cours recuperer des valeurs dans un fichier log de type IIS ou Apache.
J'aimerais savoir comment récupérer les différents champs de la ligne, les stocker dans une structure et passer a la ligne suivante.
Typiquement un algo donnerai :
S'est qu'un extrait mais ça devrai suffire à me faire comprendre le principe de la "chose"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 CONCIS tab_concis[]; cpt=0; i, j, k =0; Tant que fichier n'est pas à la fin; Lire ligne; // Extraction des informations de la ligne et classement dans un tableau // 1ère info = jour au format yyyy-mm-dd jour[] = Extraction du jour dans la ligne; mise à l'envers du jour : yyyy-mm-dd devient jj-mm-aaaa tab_concis[cpt].jour = jour; // 2ème info = heure au format hh:mm:ss heure = Extraction de l'heure dans la ligne; tab_concis[cpt].heure = heure; // on conserve le format du log // 3ème information = IP du visiteur ip = extraction de l'ip; tab_concis[cpt].ip = ip; // 4ème information = méthode d'accès a l'url methode = Extraction du premier mot après le " ouvrant; tab_concis[cpt].methode = methode; // 5ème information = url url = extraction de url; tab_concis[cpt].url = url; // je vous epargne la suite de l'algo // a savoir qu'a la fin du trie des elements de la ligne j'incrémente cpt et je dois passer a la ligne suivante
Si vous avez de la doc, un tuto, un extrait de code ça m'aiderai beaucoup ...
Vive le Perl ! ! ! !
Partager