[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
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

9 réponses

  1. Modérateur
    Salut,

    il ne s'agit pas fenter ;-))

    c'est tout simplement l'ouverture d'un handle de fichier vers une commande
    1. Modérateur
      ben voui, mais je ne savais pas qu'on pouvait le faire, c'est vachement balaise !
    2. 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)
  2. Modérateur
    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...
    1. Contributeur
      open(FH, "| mail -s sujet toto@titi.com");
      print FH "$VARIABLE" ;
      close(FH);
      1. Contributeur
        hello

        system("echo " $VARIABLE "| mail -s sujet toto@titi.com");
        1. Modérateur
          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
          1. 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 !
            1. Modérateur
              Salut,

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

              lami20j