Passage de paramètres

Fermé
gdev7 - 2 mai 2008 à 10:22
 gdev7 - 2 mai 2008 à 11:08
Bonjour,

Connaisseur en PERL, à vous... (PS : je viens à peine de débuter le PERL)

J'ai 2 fichiers, chaques fichiers à ses fonctions, normal :-)

Je déroule mon script, et à un moment, j'arrive dans une fonction où je récupère une valeur de quelques part que je doit transmettre à mon 2eme fichier. Et la est le probleme ?

Si quelqu'un a une idée, ca serait sympa...

bonne journée à vous..

Gdev
A voir également:

1 réponse

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
2 mai 2008 à 10:31
Salut,

J'ai 2 fichiers, chaques fichiers à ses fonctions, normal :-)

pour toi oui ;-)
En fait je ne comprends pas. Tu parles de 2 fichiers et d'un script.

pour que ça soit aussi pour nous, affiche les 2 fichiers ;-) et le script?!



0
Oups, désolé... vi tu as raison, ce n'est pas très compréhensif ce que j'ai mis.

Par contre, je ne vais t'afficher les fichiers qui ont de bonnes tailles et que je ne pourrais pas les réduire au minimum du problème car il n'ont pas été effectué par moi et ne savant pas trop à quoi sert quoi ...

En gros :

Imagine que
1- j'ai un script où je spécifie une liste de fichiers (qui sont des .pm) qui me servent à paramétré des valeurs.

2- j'ai un autre fichier .pm qui comporte que des fonctions génériques et qui traite fichier par fichier (parmi ma liste de fichiers ci-dessus) à l'aide des valeurs rentré dans chacun des fichiers de cette liste.

3- Dans chacun des fichiers de ma listes, j'ai une fonction qui à pour valeur un masque (expression réguliere) :
sub getInFilemask { '^NA0A1501.0A56.*'; }

4- Dans mon fichier .pm générique, j'appele cette fonction pour vérifier s'il coincide bien avec ma valeur :
my $mask = $s->getInFilemask ();
next unless ($file =~ /$mask/);

Ca c'est ok... ca marche tres bien.

Seulement voila, la tâche se complique car dans un des fichiers de la liste, le masque est variable et dépend d'une valeur que je récupère uniquement dans mon fichier .pm générique.

Donc ce que je voudrais faire :
Si on est dans le cas du fichier concerné # ca je devrais reussir
Je recupere la valeur variable à mettre dans mon masque # ca je devrais reussir
je la transmet à mon fichier concerné de ma liste # ca ?????
et je continue avec :
my $mask = $s->getInFilemask ();
next unless ($file =~ /$mask/);


Voila, si toujours pas compris, t'inquiète pas, en t'écrivant j'ai trouvé une autre facon :
Si on est dans le cas du fichier concerné
Je recupere la valeur variable à mettre dans mon masque que je met dans $var
et je continue :
my $mask = $s->getInFilemask ();
next unless ($file =~ /$mask$var/);

Je pense que c'est une bonne idée, je te tiens au courant.

J'espere avoir été compréhensif ;-)

Merci quand même d'avance d'avoir essayé
0