Lignes de code Script perl
Bonjour à Tous et à Toutes,
Mon cas est le suivant:
Je dispose d'un répertoire avec de nombreux fichiers textes ayant tous un contenu quasi similaire. J'aimerais que mon .pl exécute les documents un à un et qu'il extrait:
- Un contenu texte compris entre <MOT1> et plusieurs lignes plus loin <MOT2>
- Qu'il récupère la ligne commençant par <RESUMER> (par exemple)
- Qu'il rajoute une ligne de <blabla "NOMDUFICHIER"> au début puis une autre <end> à la fin
Puis S'ENREGISTRE
Exemple (raccourci) de document à traiter:
<bla>
<bla>
<bla>
<MOT1>
<bli>
<bli>
<MOT2>
<bla>
<bla>
<RESUMER>
<bla>
<bla>
Ce qui représente le Saint Graal pour moi :
<TEXTEBLABLA="NOMDUFICHIER">
<MOT1>
<bli>
<bli>
<MOT2>
<RESUMER>
<END>
Cette requête est à exécuter sur windows XP.
Actuellement je fonctionne avec des .bat qui me pré-mâche le travaille, on m'a conseiller d'écrire ce petit script en PERL mais ma connaissance est nouvelle (trop encore...)
N'hésitez pas si besoin d'amples informations et Merci d'avance pour votre retour.
Mon cas est le suivant:
Je dispose d'un répertoire avec de nombreux fichiers textes ayant tous un contenu quasi similaire. J'aimerais que mon .pl exécute les documents un à un et qu'il extrait:
- Un contenu texte compris entre <MOT1> et plusieurs lignes plus loin <MOT2>
- Qu'il récupère la ligne commençant par <RESUMER> (par exemple)
- Qu'il rajoute une ligne de <blabla "NOMDUFICHIER"> au début puis une autre <end> à la fin
Puis S'ENREGISTRE
Exemple (raccourci) de document à traiter:
<bla>
<bla>
<bla>
<MOT1>
<bli>
<bli>
<MOT2>
<bla>
<bla>
<RESUMER>
<bla>
<bla>
Ce qui représente le Saint Graal pour moi :
<TEXTEBLABLA="NOMDUFICHIER">
<MOT1>
<bli>
<bli>
<MOT2>
<RESUMER>
<END>
Cette requête est à exécuter sur windows XP.
Actuellement je fonctionne avec des .bat qui me pré-mâche le travaille, on m'a conseiller d'écrire ce petit script en PERL mais ma connaissance est nouvelle (trop encore...)
N'hésitez pas si besoin d'amples informations et Merci d'avance pour votre retour.
1 réponse
-
ModérateurSalut,
A adapter pour Windowslami20j@debian:~$ cat fic1 <bla> <bla> <bla> <MOT1> <bli> <bli> <MOT2> <bla> <bla> <RESUMER> aaaaa <bla> <bla> lami20j@debian:~$ cat fic2 <bla> <bla> <bla> <MOT1> <bli> <bli> <MOT2> <bla> <bla> <RESUMER> bbbb <bla> <bla> lami20j@debian:~$ cat ecrire.pl #!/usr/bin/perl -i.orig use strict;use warnings; while (<>){ print "<TEXTEBLABLA=\"NOMDUFICHIER\">\n" if $.==1; print if /\<MOT1\>/ ... /\<MOT2\>/; print if /^<RESUMER>/; print "<END>\n" if eof; } lami20j@debian:~$ perl ecrire.pl fic* lami20j@debian:~$ cat fic1 <TEXTEBLABLA="NOMDUFICHIER"> <MOT1> <bli> <bli> <MOT2> <RESUMER> aaaaa <END> lami20j@debian:~$ cat fic2 <MOT1> <bli> <bli> <MOT2> <RESUMER> bbbb <END> lami20j@debian:~$