Bash -Skript zum Senden von E -Mails

Bash -Skript zum Senden von E -Mails
E -Mail ist jetzt ein sehr häufiges Kommunikationsmedium in der heutigen Welt. Jeder kann leicht kommunizieren oder jedes Dokument mit Freunden, Familienmitgliedern und Kollegen teilen oder durch Senden der E -Mail. Im Allgemeinen verwenden die Leute einen kostenlosen E -Mail -Server wie Google Mail, Yahoo, Hotmail usw. zum Senden der E -Mail. Sie können jedoch E -Mails aus der Befehlszeile im Linux -Betriebssystem leicht senden. Es gibt viele Möglichkeiten, E -Mails in Linux zu senden. Einige häufige und einfache Möglichkeiten, E -Mails im Betriebssystem Ubuntu aus dem Terminal zu senden, werden in diesem Tutorial angezeigt.

Initialisierung:

Viele Linux -Befehl können E -Mails aus der Befehlszeile oder mithilfe eines Bash -Skripts senden. Jeder Befehl E -Mail -Senden funktioniert jedoch nicht, wenn kein SMTP -Server im System ordnungsgemäß eingerichtet ist. Sie können Ihren eigenen SMTP-Server so einrichten, dass Sie E-Mails aus der Befehlszeile senden, oder Sie können einen kostenlosen SMTP-Server eines bekannten E-Mail-Dienstanbieters wie Google Mail oder Yahoo verwenden. SMTP -Server eines Google Mail -Kontos wird in diesem Tutorial verwendet. Um diese Aufgabe zu erledigen, müssen Sie ein Google Mail -Konto auswählen und die Option „weniger sichere Apps“ für dieses Konto aktivieren, um die E -Mail zu senden. Sie können das folgende Tutorial besuchen, um diese Option zu aktivieren.

https: // linuxHint.com/how-to-send-email-from-php/

Nachdem Sie diese Option aktiviert haben, müssen Sie die Datei '/etc/ssmtp/ssmtp öffnen.conf 'mit' root 'privilege und fügen Sie die folgenden Zeilen am Ende der Datei hinzu. Sie müssen Ihre E -Mail -Adresse auf "Authuser" und Ihr E -Mail -Passwort auf "AuthPass" festlegen, um das Setup zu vervollständigen.

Usestarttls = ja
From lineOverride = ja
root = [email protected]
MailHub = SMTP.Google Mail.com: 587
Authuser = Benutzername@Google Mail.com
AuthPass = Passwort

Beispiel 1: Verwenden Sie den Befehl sendmail

Eine der beliebten E -Mail -Sendungsbefehle von Linux ist "sendmail". Der Benutzer kann problemlos E -Mails aus der Befehlszeile über diesen Befehl senden. Wenn das Sendmail -Paket nicht im System installiert ist, führen Sie den folgenden Befehl aus, um das Paket zu installieren.

$ sudo apt install SSMTP

Angenommen, der E -Mail -Inhalt wird in einer Datei namens 'E -Mail gespeichert.TXT 'mit dem folgenden Inhalt. Hier wird der Text nach dem „Betreff“ als E -Mail -Betreff gesendet und der verbleibende Teil wird als E -Mail -Körper gesendet.

Email.txt

Betreff: E -Mail mit Sendmail senden
Testen von E -Mail -Körper

Führen Sie den Befehl 'sendmail' mit Empfänger -E -Mail -Adresse wie dem folgenden Befehl aus.

$ sendmail [email protected] < email.txt

Beispiel-2: Verwenden Sie den Befehl "Mail"

Der häufigste Befehl zum Senden von E -Mails unter Linux ist "Mail" -Befehl. Dieser Befehl ist standardmäßig nicht auf Ubuntu installiert. Führen Sie den folgenden Befehl aus, um den Befehl "Mail" zu installieren.

$ sudo apt installieren mailutils

Der folgende Befehl zeigt die Version dieses Befehls an, wenn er im System installiert ist.

$ mail -v

Die Option "-s" wird im Befehl "Mail" verwendet, um das Thema der E-Mail zu definieren. Führen Sie den Befehl 'Mail' von '-s' mit E-Mail-Betreff und der Empfänger-E-Mail-Adresse aus, wie der folgende Befehl. Es wird nach CC gebeten: Adresse. Wenn Sie nicht CC: Field verwenden möchten, halten Sie es leer und drücken Sie die Eingabetaste. Geben Sie die Nachricht ein und drücken Sie Strg+D, um die E -Mail zu senden.

$ mail -S 'Betreff' [email protected]

Wenn Sie in den Befehl eine E -Mail -Nachricht hinzufügen möchten, verwenden Sie '<<<' operator like the following command.

$ mail -S 'Nachricht Betreff' [email protected] <<< 'testing message body'

Sie können die Sender-E-Mail-Adresse auch mit 'Mail' mit der Option '-a' mit 'Mail' hinzufügen. Der folgende Befehl sendet die E -Mail mit dem Betreff, "Nachricht Betreff", dem Namen und der E -Mail -Adresse des Absenders, "Administrator" und Empfänger -E -Mail -Adresse, [email protected] und Message Body, 'Testen der Nachricht'.

$ mail -S 'Nachricht Betreff' -a von: admin \
Benutzername@Google Mail.com <<< 'testing message'

Sie können auch eine E -Mail -Nachrichtenbehörde mit dem Befehl Echo und Pipe (|) senden. Der folgende Befehl verwendet den Befehl pipe (|), um die Nachrichtenkörper zu senden.

$ echo "Testmeldung" | Mail -S "Nachricht Betreff" [email protected]

E -Mails können an mehrere Empfänger gesendet werden, indem Sie den Befehl "Mail" verwenden und die Adressen der Empfänger hinzufügen, indem Comma getrennt wird. Der folgende Befehl wird an zwei Empfänger eine E -Mail gesendet.

$ mail -S "Testing -E -Mail" [email protected], [email protected] < test.txt

Beispiel-3: Verwenden Sie den Befehl "Mutt"

Wie mit dem Befehl "Mail" wird der Befehl "Mutt" standardmäßig nicht auf Ubuntu installiert. Führen Sie den folgenden Befehl aus, um den Befehl "Mutt" zu installieren.

$ sudo apt install mutt

Der Befehl 'Mutt' funktioniert ähnlich wie der Befehl "Mail", aber der Befehl 'Mutt' hat einen eigenen Editor zum Senden der E -Mail. Führen Sie den folgenden Befehl mit der gültigen E -Mail -Adresse aus, um die E -Mail zu senden.

$ echo "Testmeldung" | Mutt -S "Testing -E -Mail" [email protected]

Sie können eine beliebige Datei mit der Option '-a' mit 'Mail' oder 'Mutt' mit dem Befehl 'mail' anhängen. Im folgenden Befehl werden die Dateielemente beigefügt.TXT beim Senden der E -Mail.

$ echo "Testmeldung" | Mutt -S "Nachricht Betreff" -A -Elemente.txt - [email protected]

Beispiel-4: Verwenden Sie den Befehl "SSMTP"

Ein weiterer E -Mail -Befehl ist der Befehl "SSMTP". Wenn SSMTP vorher nicht installiert ist, installieren Sie das Paket zuerst zuerst. Der Installationsbefehl für SSMTP ist im Beispiel-1 angezeigt. SSMTP- und Sendmail -Befehle funktionieren ähnlich.

Führen Sie den folgenden Befehl mit der gültigen E -Mail -Adresse aus. Geben Sie das E -Mail -Betreff und das E -Mail ein. Drücken Sie Strg+D, um die E -Mail zu beenden und zu senden.

$ ssmtp [email protected]

Beispiel-5: Verwenden Sie den Befehl mailx

Sie können HTML -Inhalte als E -Mail -Körper senden, ohne einfach die Textnachricht zu senden. Erstellen Sie eine HTML -Datei mit dem Namen 'Test.HTML 'als Nachrichtenkörper zu verwenden.

prüfen.html


>

E -Mail -Senden


Meldungstestkörper testen
<

Der Befehl 'Mailx' funktioniert wie 'Mail' Befehl. Sie müssen den Inhaltstyp als Text/HTML erwähnen, um HTML-Inhalt als Meldungsgremium in 'Mailx' zu senden. Der folgende Befehl sendet den Inhalt des 'Tests.HTML 'Datei als E -Mail -Nachrichtenbehörde.

$ mailx -a 'Inhaltstyp: text/html' -s "Senden von E -Mails mit mailx" senden
< test.html "[email protected]"

Wenn Sie den Posteingang des Empfänger -E -Mail -Kontos überprüfen, wird die Liste der E -Mails als folgenden Bild angezeigt.

Abschluss

Nach dem ordnungsgemäßen Üben der oben genannten Befehle kann der Leser in der Lage sein, E -Mails aus der Befehlszeile leicht unter Linux zu senden.