Si tu lances ton interpréteur perl, c'est que tu fais un fork(). Un processus forke hérite des variables d'environnement du processus de l'environnement qui le lance. Mais le processus fils de peut pas modifier l'environnement du père.
En outre, tu peux renvoyer un code retour, mais c'est limité : c'est un nombre entre -127 et +127.
Le mieux c'est de renvoyer ce que tu veux sur la sortie standard de ton script perl : comme ceci
perl (script.pl)
> #!/usr/bin/perl
> my $resultat="Le resultat !!!";
> print "$resultat\n";
# RE: Exporter variable perl dans le shell qui le lance
Posté par tontonflingueur . En réponse au message Exporter variable perl dans le shell qui le lance. Évalué à 3.
Si tu lances ton interpréteur perl, c'est que tu fais un fork(). Un processus forke hérite des variables d'environnement du processus de l'environnement qui le lance. Mais le processus fils de peut pas modifier l'environnement du père.
En outre, tu peux renvoyer un code retour, mais c'est limité : c'est un nombre entre -127 et +127.
Le mieux c'est de renvoyer ce que tu veux sur la sortie standard de ton script perl : comme ceci
perl (script.pl)
> #!/usr/bin/perl
> my $resultat="Le resultat !!!";
> print "$resultat\n";
shell :
> RESULTAT=`perl script.pl`
RESULTAT devrait contenir "Le resultat !!!".