[Perl]-Lancer une commande interactive
Résolu
Bonjour,
comment lancer une commande interactive unix sous perl et récupérer les résultats dans une variable ?
En shell, je fais un truc comme ça :
Merci d'avance.
--
A+ Blux
comment lancer une commande interactive unix sous perl et récupérer les résultats dans une variable ?
En shell, je fais un truc comme ça :
$RESUOK=`toto <<fin 2>&1 show a print w quit fin`;Mais en perl ?
Merci d'avance.
--
A+ Blux
"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
6 réponses
-
ModérateurSalut,
La syntaxe et la suivante$variable = qx /commande/;
ou$variable = `commande`
-
Modérateuret je sépare comment les différentes réponses ? avec un saut de ligne comme en shell ?
-
ModérateurJ'aimerai bien que tu m'expliques ce que fait ta commande en shell pour pouvoir te donner une réponse exacte ;-)
-
ModérateurJ'appelle toto, mais c'est une commande interactive, elle attend des actions de ma part, donc je les mets à la ligne les unes par rapport aux autres, mais en ayant dit au shell que les commandes sont à lire dans le pseudo-fichier d'entrée nommé fin.
Ca pourrait donner un truc comme ça :
root#toto
toto>show a
toto>a to be shown
toto>print w
w=12
a=15
toto>quit
root#
-
ModérateurJ'avais pas testé mais ça marche pareil qu'en shell ! :-)
-
ModérateurJustement j'étais en train de me demander, pourquoi tu n'as pas essayé ;-)
Tant mieux que ça marche ;-)
Tu peux mettre résolu ;-))