Re bonjour,
je n'arrive pas à trouver ça, mais j'aimerais utiliser une variable qui est disponible dans un autre fichier :
algo.pl utilise une variable (en fait un array/tableau) disponible dans configuration.pl.
pouvez-vous m'aider?
Version imprimable
Re bonjour,
je n'arrive pas à trouver ça, mais j'aimerais utiliser une variable qui est disponible dans un autre fichier :
algo.pl utilise une variable (en fait un array/tableau) disponible dans configuration.pl.
pouvez-vous m'aider?
quelle est le lien entre les 2 scripts?
si depuis configuration.pl tu appelles algo.pl => passe la réference en paramètre
si depuis algo.pl tu appelles configuration.pl => renvoie la variable en sortie du script
si tu veux une réponse plus précise, soit le dans la question :P
bon, mon configuration.pl contient un tableau
et j'aimerais utiliser $clients dans mon algo.pl, par exemple :Code:
1
2
3 my @clients = ( ['site', 'site1', 'site2'], ['evol', 'evol1', 'evol2', 'evol3'] );
lorsque j'execute algo.pl, le résultat seraitCode:print "@$_\n" for @clients;
Code:
1
2 site site1 site2 evol evol1 evol2 evol3
est-ce plus précis?
Salut,
Dans ton fichier principal :
Dans ton fichier de configuration, nommé script_conf.pmCode:
1
2
3
4
5 #!/usr/bin/perl use script_conf; printf $variable
Code:
1
2
3
4
5
6
7
8
9
10
11 #!/usr/bin/perl package script_conf; use Exporter; our @ISA = 'Exporter'; our @EXPORT = qw($variable); our $variable = "toto"; 1;
pour pour voir t'aider:
- quelle est le lien entre les 2 scripts? l'un appelle l'autre, 2 scripts indépendants...
- ton @clients est écrit en dur dans "configuration.pl"? ou est rempli par le script?
algo.pl restera le script, dont l'utilisateur n'aura pas besoin de toucher.
configuration.pl sera un fichier en dur, l'utilisateur pourra effecter des modifs.
algo.pl se sert de ce qui est dans configuration.pl pour effectué ce qu'il dooit faire
je n'y arrive pas.
configuration.pl :
algo.pl :Code:
1
2
3
4
5
6
7
8
9
10
11
12 #!/usr/bin/perl package script_conf; use Exporter; our @ISA = 'Exporter'; our @EXPORT = qw(@clients); our @clients = ( ['site', 'site1', 'site2'], ['evol', 'evol1', 'evol2', 'evol3'] );
perl algo.plCode:
1
2
3
4
5
6
7
8 #!/usr/bin/perl use File::Copy; use strict; use warnings; use script_conf; print "@$_\n" for @clients;
Code:
1
2
3 perl algo.pl Can't locate script_conf.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at algo.pl line 6. BEGIN failed--compilation aborted at algo.pl line 6.
il faut parfois faire un peu plus que juste copier/coller les propositions proposées sur le forumCitation:
Envoyé par ggnore
et quels sont les differences entre .pm et .pl ?
merci ggnore! ça marche nikel!