Lancer un script perl dans un autre script perl sous UNIX

Lancer un script perl dans un autre script perl sous UNIX - Programmation

Marsh Posté le 18-03-2002 à 18:00:54    

Voilà tout est dit dans le sujet...
 
Alors pourquoi une telle demande ?? parce que il me faut encapsuler l'appel à des fonctions d'une librairie qui utilise une version de perl qui est différente de celle utilisé par un script...
 
Merci pour votre aide
 
VF

Reply

Marsh Posté le 18-03-2002 à 18:00:54   

Reply

Marsh Posté le 18-03-2002 à 18:12:50    

fbarre2001 a écrit a écrit :

Voilà tout est dit dans le sujet...
 
Alors pourquoi une telle demande ?? parce que il me faut encapsuler l'appel à des fonctions d'une librairie qui utilise une version de perl qui est différente de celle utilisé par un script...
 
Merci pour votre aide
 
VF  




 
avec la commande system ou entre `` tu peux exécuter une commande système, tu devrais donc pouvoir lancer la version de perl qui t'intéresse avec le script en question non?

Reply

Marsh Posté le 18-03-2002 à 18:54:57    

j'avais déjà executer cette fonction PERL...
 
Le seul problème c'est que je veux passer des paramètres à mon script et ce dernier me renvoie une string que je dois récupérer dans le script appellant...
 
comment puis-je faire ce tour de magie???
 
Merci bien
 
FB

Reply

Marsh Posté le 18-03-2002 à 20:21:21    

fbarre2001 a écrit a écrit :

j'avais déjà executer cette fonction PERL...
 
Le seul problème c'est que je veux passer des paramètres à mon script et ce dernier me renvoie une string que je dois récupérer dans le script appellant...
 
comment puis-je faire ce tour de magie???
 
Merci bien
 
FB  




 
bah pour récupérer la string, tu fais un print de la string que tu veux récupérer, et dans la programme appelant tu peux faire ça pour récupérer le résultat :
$result = `/usr/bin/perl toto.pl 'arg1' 'arg2'`;
 
attention, je n'utilise ni une quote, ni un guillemet pour exécuter la commande, c'est le caractère ASCII 096 et tu peux l'obtenir en faisant [Alt-Gr][7]
 
$result récupérant donc la sortie standard du programme.
 
Autre solution, tu peux aussi faire une PIPE... mais bon ça vaut peut-être pas le coup là :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed