Bonjour,
Je possède un fichier de configuration : dhcpd.conf, et je voudrais
récupérer à l'aide de perl, les champs de chaque hôte et générer une
page HTML avce ceux ci.
Le fichier est structuré comme suit :
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Benoit Izac
Bonjour,
le 04/05/2004 à 12:53, (Ben) a écrit dans le message :
Je possède un fichier de configuration : dhcpd.conf, et je voudrais récupérer à l'aide de perl, les champs de chaque hôte et générer une page HTML avce ceux ci. Existe-il un parseur ou comment la faire à la main??
Ton fichier ne me semble pas correct : avec la version d'ISC que j'utilise, les lignes finissent par un `;' et il n'y a pas de champs `Description' et `Location'. J'ai fait selon le cahier des charges, à toi d'adapter par la suite. Ce script est sommaire ; il ne gère pas les commentaires, les champs comme les adresses MAC ou IP pourraient avoir des expressions rationnelles plus fines. Pour le HTML, je te laisse te débrouiller.
#!/usr/bin/perl -w use strict;
local $/; while (<DATA>) { while (/s*hosts+(w+)s*{s* hardwares+ethernets+(S*)s* fixed-addresss+(S*)s* Descriptions*:s*(S*)s* Locations*:s*(S*)s* }/mxg) { print "$1 $2 $3 $4 $5n"; } }
__DATA__ host nom { hardware ethernet addr_mac fixed-address ip Description : descr Location : info
le 04/05/2004 à 12:53, benoitcroissant@free.fr (Ben) a écrit
dans le message <fd90c25d.0405040253.34c37b21@posting.google.com> :
Je possède un fichier de configuration : dhcpd.conf, et je voudrais
récupérer à l'aide de perl, les champs de chaque hôte et générer une
page HTML avce ceux ci.
Existe-il un parseur ou comment la faire à la main??
Ton fichier ne me semble pas correct : avec la version d'ISC que
j'utilise, les lignes finissent par un `;' et il n'y a pas de champs
`Description' et `Location'. J'ai fait selon le cahier des charges, à
toi d'adapter par la suite.
Ce script est sommaire ; il ne gère pas les commentaires, les champs
comme les adresses MAC ou IP pourraient avoir des expressions
rationnelles plus fines.
Pour le HTML, je te laisse te débrouiller.
#!/usr/bin/perl -w
use strict;
local $/;
while (<DATA>) {
while (/s*hosts+(w+)s*{s*
hardwares+ethernets+(S*)s*
fixed-addresss+(S*)s*
Descriptions*:s*(S*)s*
Locations*:s*(S*)s*
}/mxg) {
print "$1 $2 $3 $4 $5n";
}
}
__DATA__
host nom {
hardware ethernet addr_mac
fixed-address ip
Description : descr
Location : info
le 04/05/2004 à 12:53, (Ben) a écrit dans le message :
Je possède un fichier de configuration : dhcpd.conf, et je voudrais récupérer à l'aide de perl, les champs de chaque hôte et générer une page HTML avce ceux ci. Existe-il un parseur ou comment la faire à la main??
Ton fichier ne me semble pas correct : avec la version d'ISC que j'utilise, les lignes finissent par un `;' et il n'y a pas de champs `Description' et `Location'. J'ai fait selon le cahier des charges, à toi d'adapter par la suite. Ce script est sommaire ; il ne gère pas les commentaires, les champs comme les adresses MAC ou IP pourraient avoir des expressions rationnelles plus fines. Pour le HTML, je te laisse te débrouiller.
#!/usr/bin/perl -w use strict;
local $/; while (<DATA>) { while (/s*hosts+(w+)s*{s* hardwares+ethernets+(S*)s* fixed-addresss+(S*)s* Descriptions*:s*(S*)s* Locations*:s*(S*)s* }/mxg) { print "$1 $2 $3 $4 $5n"; } }
__DATA__ host nom { hardware ethernet addr_mac fixed-address ip Description : descr Location : info