[Perl]-Envoyer une variable par mail unix
Résolu
Bonjour,
je souhaiterais savoir s'il est possible d'invoquer le 'mail' unix en perl en passant une variable en corps de message et si oui, comment faire ?
mail -s "sujet" toto@titi.com $VARIABLE ???
Merci d'avance
--
A+ Blux
je souhaiterais savoir s'il est possible d'invoquer le 'mail' unix en perl en passant une variable en corps de message et si oui, comment faire ?
mail -s "sujet" toto@titi.com $VARIABLE ???
Merci d'avance
--
A+ Blux
"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
9 réponses
-
ModérateurSalut,
tu peux utiliser la fonction system (je n'ai pas testé ;-)system("mail", "-s", "toto@titi.com", $VARIABLE);--
lami20j -
Modérateurça ne marche pas, il attend le ^D de fin de saisie, me demande les Cc et me prend $VARIABLE comme la liste des destinataires !
-
ModérateurSalut,
et pourquoi n'utilises-tu MIME::Lite ?! -
ModérateurC'est pas un module présent en standard, je crois...
Je vais faire autrement du coup...
Un fichier temporaire que je redirige sur ma commande
-
Contributeurhello
system("echo " $VARIABLE "| mail -s sujet toto@titi.com"); -
ModérateurCa le fait pas, ma variable contient des \n...
-
Contributeuropen(FH, "| mail -s sujet toto@titi.com");
print FH "$VARIABLE" ;
close(FH); -
ModérateurCool, ça marche...:-)
Faut juste penser à déspécialiser le @
EDIT : très bonne astuce ceci-dit, en passant. Je ne savais pas qu'on pouvait feinter comme ça...
-
ModérateurSalut,
il ne s'agit pas fenter ;-))
c'est tout simplement l'ouverture d'un handle de fichier vers une commande-
-
Modérateur@bluxmaintenant tu le sais
sache que ça marche dans les 2 sens
1. lire la sortie d'un programme
open (LIRE, "programme |")
2. écrire dans le programme (ton cas)
open (ECRIRE, "| programme")
tu remarques bien la position de pipe | (au début et à la fin)
-