Skrypt bash do wysłania e-maila

Bash Script Send Email



E-mail jest obecnie bardzo powszechnym środkiem komunikacji w dzisiejszym świecie. Każdy może łatwo komunikować się lub udostępniać dowolny dokument znajomym, członkom rodziny i współpracownikom, wysyłając wiadomość e-mail. Ogólnie rzecz biorąc, ludzie używają dowolnego bezpłatnego serwera poczty e-mail, takiego jak Gmail, Yahoo, Hotmail itp. Do wysyłania wiadomości e-mail. Ale możesz łatwo wysyłać wiadomości e-mail z wiersza poleceń w systemie operacyjnym Linux. Istnieje wiele sposobów wysyłania wiadomości e-mail w systemie Linux. W tym samouczku pokazano kilka typowych i łatwych sposobów wysyłania wiadomości e-mail w systemie operacyjnym Ubuntu z terminala.

Inicjalizacja:

Wiele poleceń systemu Linux jest dostępnych do wysyłania wiadomości e-mail z wiersza poleceń lub za pomocą skryptu bash. Jednak żadne polecenie wysyłania wiadomości e-mail nie zadziała, jeśli w systemie nie zostanie poprawnie skonfigurowany żaden serwer SMTP. Możesz skonfigurować własny serwer SMTP do wysyłania wiadomości e-mail z wiersza poleceń lub możesz użyć dowolnego bezpłatnego serwera SMTP dowolnego znanego dostawcy usług poczty e-mail, takiego jak Gmail lub Yahoo. W tym samouczku jest używany serwer SMTP konta Gmail. Aby wykonać to zadanie, musisz wybrać konto Gmail i włączyć opcję „Zezwalaj mniej bezpiecznym aplikacjom” dla tego konta na wysyłanie wiadomości e-mail. Możesz odwiedzić poniższy samouczek, aby włączyć tę opcję.







https://linuxhint.com/jak-wysłać-e-mail-z-php/



Po włączeniu tej opcji musisz otworzyć plik „/etc/ssmtp/ssmtp.conf” z uprawnieniami „root” i dodać następujące wiersze na końcu pliku. Aby zakończyć konfigurację, musisz ustawić swój adres e-mail na „AuthUser” i hasło do poczty e-mail na „AuthPass”.



UżyjSTARTTLS=TAK
Od linii nadpisania=TAK
źródło=administrator@przykład.com
centrum pocztowe=smtp.gmail.com:587
AuthUser=nazwa użytkownika@gmail.com
Uwierzytelnianie=hasło

Przykład-1: Używanie polecenia Sendmail

Jednym z popularnych poleceń Linuksa do wysyłania wiadomości e-mail jest `sendmail`. Użytkownik może łatwo wysyłać wiadomości e-mail z wiersza poleceń za pomocą tego polecenia. Jeśli pakiet Sendmail nie jest zainstalowany w systemie, uruchom następujące polecenie, aby zainstalować pakiet.





$sudotrafnyzainstalowaćssmtp

Załóżmy, że treść wiadomości e-mail jest przechowywana w pliku o nazwie „email.txt” o następującej treści. Tutaj tekst po „Temat:” zostanie wysłany jako temat wiadomości e-mail, a pozostała część zostanie wysłana jako treść wiadomości e-mail.

email.txt



Temat: Wysyłanie e-maila za pomocą sendmail
Testowanie treści wiadomości e-mail

Uruchom polecenie „sendmail” z adresem e-mail odbiorcy, tak jak w poniższym poleceniu.

$Wyślij mailaNazwa Użytkownika@gmail.com<email.txt

Przykład-2: Używanie polecenia „poczta”

Najpopularniejszym poleceniem do wysyłania e-maili w Linuksie jest polecenie `mail`. To polecenie nie jest domyślnie instalowane w Ubuntu. Uruchom następujące polecenie, aby zainstalować polecenie `mail`.

$sudotrafnyzainstalowaćmailutils

Następujące polecenie pokaże wersję tego polecenia, jeśli jest ono zainstalowane w systemie.

$Poczta-V

Opcja '-s' jest używana w poleceniu `mail` do zdefiniowania tematu wiadomości e-mail. Uruchom polecenie „mail” za pomocą opcji „-s” z tematem wiadomości e-mail i adresem e-mail odbiorcy, tak jak w poniższym poleceniu. Poprosi o Cc: adres. Jeśli nie chcesz używać pola DW: pozostaw je puste i naciśnij enter. Wpisz treść wiadomości i naciśnij Ctrl+D, aby wysłać wiadomość e-mail.

$Poczta-s 'Przedmiot'Nazwa Użytkownika@gmail.com

Jeśli chcesz dodać treść wiadomości e-mail w poleceniu, użyj „<<<’ operator like the following command.

$Poczta-s 'temat wiadomości'Nazwa Użytkownika@gmail.com<<< „testowanie treści wiadomości”

Możesz również dodać adres e-mail nadawcy za pomocą polecenia `mail`, używając opcji „-a”. Następujące polecenie wyśle ​​wiadomość e-mail z tematem, „temat wiadomości”, nazwą nadawcy i adresem e-mail, „Administrator<[e-mail chroniony]>” oraz adres e-mail odbiorcy,[e-mail chroniony]i treść wiadomości, „wiadomość testowa”.

$ poczta-s 'temat wiadomości' -doOd:Administrator<Administrator@przyklad.com >
Nazwa Użytkownika@gmail.com<<< „wiadomość testowa”

Możesz również wysłać treść wiadomości e-mail za pomocą polecenia echo i pipe( | ). Następujące polecenie używa polecenia potoku (|) do wysłania treści wiadomości.

$wyrzucił „wiadomość testowa” |Poczta-s 'temat wiadomości'Nazwa Użytkownika@przykład.com

E-mail można wysłać do wielu odbiorców za pomocą polecenia `mail` i dodając adresy odbiorców oddzielając je przecinkami. Następujące polecenie zostanie wysłane e-mailem do dwóch odbiorców.

$Poczta-s „Testowy adres e-mail”nazwa użytkownika1@example.com , nazwa użytkownika2@przykład.com<test.txt

Przykład-3: Użycie polecenia `mutt`

Podobnie jak polecenie `mail`, polecenie `mutt` nie jest domyślnie instalowane w Ubuntu. Uruchom następujące polecenie, aby zainstalować polecenie `mutt`.

$sudotrafnyzainstalowaćbłazen

Komenda `mutt` działa podobnie do komendy `mail`, ale komenda `mutt` posiada własny edytor do wysyłania wiadomości e-mail. Uruchom następujące polecenie z prawidłowym adresem e-mail, aby wysłać wiadomość e-mail.

$wyrzuciłtestowa wiadomość|błazen-s „Testowa poczta e-mail”Nazwa Użytkownika@przykład.com

Możesz dołączyć dowolny plik za pomocą opcji „-a” za pomocą polecenia `mail` lub `mutt`. Następujące polecenie dołączy plik items.txt podczas wysyłania wiadomości e-mail.

$wyrzucił „wiadomość testowa” |błazen-s 'temat wiadomości' -doitems.txt-Nazwa Użytkownika@gmail.com

Przykład-4: Używanie polecenia „SSMTP”

Innym poleceniem e-mail jest polecenie `ssmtp`. Jeśli ssmtp nie został wcześniej zainstalowany, najpierw zainstaluj pakiet. Polecenie instalacji dla ssmtp pokazano w przykładzie-1. Podobnie działają polecenia ssmtp i sendmail.

Uruchom następujące polecenie z poprawnym adresem e-mail. Wpisz temat i treść wiadomości e-mail. Naciśnij ctrl+D, aby wyjść i wysłać wiadomość e-mail.

$nazwa użytkownika ssmtp@gmail.com

Przykład-5: Używanie polecenia mailx

Możesz wysłać zawartość HTML jako treść wiadomości e-mail bez wysyłania wiadomości tekstowej. Utwórz plik HTML o nazwie „test.html”, który będzie używany jako treść wiadomości.

test.html

< html >
< ciało >>
< h3 >Wysyłanie e-maili</ h3 >
< robić rozmiar='2' kolor='Internet'>Testowanie treści wiadomości</ robić >
<</ ciało >
</ html >

Polecenie `mailx` działa jak polecenie `mail`. Musisz wspomnieć Content-Type jako text/html, aby wysłać zawartość HTML jako treść wiadomości w poleceniu `mailx`. Następujące polecenie wyśle ​​zawartość pliku „test.html” jako treść wiadomości e-mail.

$ mailx-do „Typ treści: text/html” -s 'Wysyłanie wiadomości e-mail przy użyciu mailx'
<test.html' [e-mail chroniony] '

Gdy sprawdzisz skrzynkę odbiorczą konta e-mail odbiorcy, lista e-maili zostanie pokazana jako poniższy obraz.

Wniosek

Po prawidłowym przećwiczeniu powyższych poleceń, miej nadzieję, że czytelnik będzie mógł łatwo wysyłać wiadomości e-mail z wiersza poleceń w systemie Linux.