Comment envoyer du courrier depuis le terminal à l'aide d'un script

Pour des raisons X ou Y, parfois nous avons besoin de programmer le serveur de notre entreprise pour faire une certaine tâche, et nous voulons savoir si cette tâche a été exécutée sans problème, pour cela nous programmons que si tout s'est bien passé, prévenez-nous… mais… ¿Comment le serveur peut-il nous avertir?

Très simple, nous vous dirons à travers un script Python que vous nous envoyez un e-mail, de cette manière lorsque nous vérifions la boîte aux lettres, nous lirons si le serveur n'a eu aucun problème à passer la commande.

Le script les a laissés ici: envoyer-email.py

Pour l'utiliser, c'est très simple, ouvrez un terminal, écrivez ce qui suit et appuyez sur [Entrer]:

cd $HOME/ && wget http://paste.desdelinux.net/paste/?dl=89 && mv index.html\?dl\=89 send-email.py && chmod +s send-email.py

Je vous laisse comment le processus serait:

% CODE1%

Une fois cela fait, vous devez éditer le script pour mettre vos propres données, je vais les éditer en mettant mes données, c'est-à-dire les données d'ici mon travail.

Ouvrez le script (send-email.py) et modifiez ces informations:

  • votre email @desdelinux. Net par votre email (dans cet exemple - » kzkggaara@ipichcb.rimed.cu)
  • Corps du message par le contenu de l'e-mail (dans cet exemple - » Ceci est un e-mail de test)
  • you.mailserver.cu par votre serveur de messagerie (dans cet exemple - » 192.168.1.2)
  • votre email par votre utilisateur (dans cet exemple - » kzkggaara)
  • votre mot de passe pour votre mot de passe (dans cet exemple - » HAHA… ouais… bien sûr… LOL)

Cela ressemble à ce qui suit: send-email.py (Modifié)

Et voila, il ne reste plus qu'à envoyer le mail ... pour cela nous mettrons ce qui suit:

  • python send-email.py "Ici, nous mettons le sujet" destinataire@domaine.com

Autrement dit, nous devons exécuter le script et passer le paramètre "Sujet" (c'est-à-dire le sujet que l'e-mail prendra) et également à qui (adresse e-mail) il sera envoyé.

Je vais m'envoyer un mail, voici l'exemple:

% CODE2%

Et maintenant 😀

Comme vous pouvez le voir, quelque chose d'assez simple ... mais cela peut nous aider à certaines occasions 😉

salutations


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   Jondarlek dit

    c'est très bien .. mais je veux quelque chose comme ça qui fonctionne pour Windows mais je ne le trouve pas 🙁

    1.    KZKG ^ Gaara dit

      Pour Windows ... mmm ... vous devez installer Python sur un ami Windows: http://www.python.org/getit/windows/

    2.    Jean dit

      pour windows il y a un outil appelé Cobian, il est très bon et intuitif

  2.   Carlos T. dit

    comment activer le script pour envoyer avec gmail (smtp)?

    1.    Elwuilmer dit

      J'ai la même question: /

      Je pourrais:

      s = SMTP ('smtp.gmail.com')
      s.starttls () # Si vous utilisez TLS
      s.ehlo ()

      Cependant, cela me donne cette erreur:

      python send-email.py "Ici nous mettons le sujet" aquimi@correo.com
      Traceback (appel le plus récent dernier):
      Fichier "send-email.py", ligne 14, dans
      s = SMTP ('smtp.gmail.com')
      Fichier "/usr/lib/python2.6/smtplib.py", ligne 239, dans __init__
      (code, msg) = self.connect (hôte, port)
      Fichier "/usr/lib/python2.6/smtplib.py", ligne 295, dans connect
      self.sock = self._get_socket (hôte, port, self.timeout)
      Fichier "/usr/lib/python2.6/smtplib.py", ligne 273, dans _get_socket
      return socket.create_connection ((port, hôte), timeout)
      Fichier "/usr/lib/python2.6/socket.py", ligne 561, dans create_connection
      générer une erreur, msg
      socket.error: [Errno 101] Le réseau est inaccessible

  3.   reedyseth dit

    C'est bien, puis vous le programmez avec cron et prêt à signaler: D.

    1.    KZKG ^ Gaara dit

      Oui! hehe, gagnez beaucoup de temps, automatisez les choses avec des scipts 🙂

  4.   luweeds dit

    Merci pour le message, je le trouve intéressant et l'ajout de la fonctionnalité citée par Reedyseth a un autre utilitaire. 😉 salutations compas!

    1.    KZKG ^ Gaara dit

      Merci à vous pour le commentaire 😀
      Salutations ami.

  5.   Neo61 dit

    Gaara, mon ami, je suis sûr que cet article est très bon car tout le monde ici se démarque mais je - NO -PUE-DO-SEE-LOS-E-JEM-PLOS-POR-MI-MAL-DI-TA-CO- NEC- TION
    QUE DOIS-JE FAIRE POUR LES VOIR, ME COUPER LA GORGE?

    1.    KZKG ^ Gaara dit

      Vous ne pouvez pas ouvrir ce lien? - » http://paste.desdelinux.net/89

  6.   Neo61 dit

    Laissez-moi vous demander quelque chose, pourriez-vous faire un script pour qu'un certain jour je puisse envoyer un message spécifique à tous les utilisateurs de mon centre? J'imagine, mais vous êtes le spécialiste et si vous le confirmez, pourriez-vous m'aider à en faire un?

    1.    KZKG ^ Gaara dit

      Oui, pour faire "quelque chose" un jour donné, vous devez utiliser crontab.
      Ensuite, en supposant que vous souhaitiez envoyer un fichier .PDF (par exemple, note.pdf) à vos utilisateurs, envoyer à un seul e-mail serait:
      mail -s "Este es el asunto del correo" direccionemail@loquesea.cu < nota.pdf

      Maintenant, pour envoyer cela, mais pas seulement à une adresse, mais à plusieurs autres ... vous auriez besoin d'avoir les adresses dans un fichier texte (séparé par un saut de ligne), puis utilisez une boucle en. Par exemple, si vous avez les e-mails dans addresses.txt, ce serait:

      for i in `cat direcciones.txt`;
      do
      mail -s "Este es el asunto del correo" $i < nota.pdf
      done

  7.   David Candle dit

    Merci mon pote, le script fonctionne très bien.

  8.   Franck dit

    Où est le script si vous pouvez m'aider

  9.   Areli dit

    Pouvez-vous s'il vous plaît partager les exemples ????