[Perl]-Envoyer une variable par mail unix

Résolu
blux Messages postés 2046 Date d'inscription   Statut Modérateur Dernière intervention   -  
lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   -
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
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

9 réponses

  1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    tu peux utiliser la fonction system (je n'ai pas testé ;-)
    system("mail", "-s", "toto@titi.com", $VARIABLE);
    --

    lami20j
    0
  2. blux Messages postés 2046 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    ç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 !
    0
  3. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    et pourquoi n'utilises-tu MIME::Lite ?!
    0
  4. blux Messages postés 2046 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    C'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
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
     
    hello

    system("echo " $VARIABLE "| mail -s sujet toto@titi.com");
    0
  7. blux Messages postés 2046 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    Ca le fait pas, ma variable contient des \n...
    0
  8. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
     
    open(FH, "| mail -s sujet toto@titi.com");
    print FH "$VARIABLE" ;
    close(FH);
    0
  9. blux Messages postés 2046 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    Cool, ç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...
    0
  10. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    il ne s'agit pas fenter ;-))

    c'est tout simplement l'ouverture d'un handle de fichier vers une commande
    0
    1. blux Messages postés 2046 Date d'inscription   Statut Modérateur Dernière intervention   3 455
       
      ben voui, mais je ne savais pas qu'on pouvait le faire, c'est vachement balaise !
      0
      1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571 > blux Messages postés 2046 Date d'inscription   Statut Modérateur Dernière intervention  
         
        maintenant 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)
        0