Bash -skripti sähköpostin lähettämiseen

Bash Script Send Email



Sähköposti on hyvin yleinen viestintäväline nykymaailmassa. Kuka tahansa voi helposti kommunikoida tai jakaa minkä tahansa asiakirjan ystävien, perheenjäsenten ja työtovereiden kanssa lähettämällä sähköpostiviestin. Yleensä ihmiset käyttävät mitä tahansa ilmaista sähköpostipalvelinta, kuten Gmail, Yahoo, Hotmail jne. Sähköpostin lähettämiseen. Mutta voit lähettää sähköpostia komentoriviltä helposti Linux -käyttöjärjestelmässä. Sähköpostin lähettämiseen Linuxissa on monia tapoja. Tässä opetusohjelmassa on joitain yleisiä ja helppoja tapoja lähettää sähköpostia Ubuntun käyttöjärjestelmässä päätelaitteesta.

Alustus:

Monet Linux -komennot ovat käytettävissä sähköpostin lähettämiseen komentoriviltä tai bash -komentosarjan avulla. Mutta mikään sähköpostin lähetyskomento ei toimi, jos SMTP -palvelinta ei ole määritetty oikein järjestelmässä. Voit määrittää oman SMTP-palvelimesi lähettämään sähköpostia komentoriviltä tai voit käyttää minkä tahansa tunnetun sähköpostipalveluntarjoajan, kuten Gmailin tai Yahoon, ilmaista SMTP-palvelinta. Tässä opetusohjelmassa käytetään Gmail -tilin SMTP -palvelinta. Voit suorittaa tämän tehtävän valitsemalla Gmail -tilin ja ottamalla käyttöön Salli vähemmän suojatut sovellukset -vaihtoehdon, jotta kyseinen tili lähettää sähköpostin. Voit ottaa tämän vaihtoehdon käyttöön seuraavasta opetusohjelmasta.







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



Kun olet ottanut tämän vaihtoehdon käyttöön, sinun on avattava tiedosto '/etc/ssmtp/ssmtp.conf' root -oikeudella ja lisättävä seuraavat rivit tiedoston loppuun. Sinun on määritettävä sähköpostiosoitteesi 'AuthUser' ja sähköpostiosoitteesi 'AuthPass', jotta asennus voidaan suorittaa loppuun.



KäytäSTARTTLS= KYLLÄ
LähettäjäLineOverride= KYLLÄ
juuri= ylläpitäjä@example.com
mailhub= smtp.gmail.com:587
AuthUser= käyttäjätunnus@gmail.com
AuthPass= salasana

Esimerkki 1: Sendmail-komennon käyttäminen

Yksi Linuxin suosituista sähköpostin lähetyskomennoista on `sendmail`. Käyttäjä voi helposti lähettää sähköpostia komentoriviltä käyttämällä tätä komentoa. Jos Sendmail -pakettia ei ole asennettu järjestelmään, asenna paketti suorittamalla seuraava komento.





$sudosopivaAsentaassmtp

Oletetaan, että sähköpostin sisältö tallennetaan tiedostoon nimeltä 'email.txt', jonka sisältö on seuraava. Tässä 'Aihe:' -tekstin jälkeen oleva teksti lähetetään sähköpostin aiheena ja loppuosa sähköpostin tekstinä.

email.txt



Aihe: Sähköpostin lähettäminen sendmaililla
Testataan sähköpostin runkoa

Suorita sendmail -komento vastaanottajan sähköpostiosoitteella, kuten seuraava komento.

$Lähetä postiakäyttäjätunnus@gmail.com<email.txt

Esimerkki 2: Sähköpostikomennon käyttäminen

Yleisin komento sähköpostin lähettämiseen Linuxissa on `mail '-komento. Tätä komentoa ei ole oletusarvoisesti asennettu Ubuntuun. Asenna `mail` -komento suorittamalla seuraava komento.

$sudosopivaAsentaamailutils

Seuraava komento näyttää tämän komennon version, jos se on asennettu järjestelmään.

$postitse-V

'-S' -vaihtoehtoa käytetään 'mail' -komennossa määrittämään sähköpostin aihe. Suorita `` mail '' -komento käyttämällä -s-vaihtoehtoa sähköpostin aiheella ja vastaanottajan sähköpostiosoitteella, kuten seuraava komento. Se kysyy Cc: osoitetta. Jos et halua käyttää Cc: -kenttää, pidä se tyhjänä ja paina enter. Kirjoita viestin teksti ja lähetä sähköposti painamalla Ctrl+D.

$postitse-s 'aihe'käyttäjätunnus@gmail.com

Jos haluat lisätä sähköpostiviestin tekstin komentoon, käytä '<<<’ operator like the following command.

$postitse-s 'Viestin aihe'käyttäjätunnus@gmail.com<<< 'testiviestin runko'

Voit myös lisätä lähettäjän sähköpostiosoitteen komennolla 'mail' käyttämällä '-a' -vaihtoehtoa. Seuraava komento lähettää sähköpostiviestin, jossa on aihe, 'viestin aihe', lähettäjän nimi ja sähköpostiosoite 'Järjestelmänvalvoja'<[sähköposti suojattu]> Ja vastaanottajan sähköpostiosoite,[sähköposti suojattu]ja viestin runko, 'testiviesti'.

$ posti-s 'Viestin aihe' -kohteeseenLähettäjä: Järjestelmänvalvoja <admin@esimerkki.fi >
käyttäjätunnus@gmail.com<<< 'testiviesti'

Voit lähettää sähköpostiviestin myös käyttämällä echo and pipe (|) -komentoa. Seuraava komento lähettää viestikentän lähettämällä pipe (|) -komennon.

$heitti pois 'testiviesti' |postitse-s 'Viestin aihe'käyttäjätunnus@example.com

Sähköposti voidaan lähettää useille vastaanottajille käyttämällä `mail` -komentoa ja lisäämällä vastaanottajien osoitteet erottamalla toisistaan ​​pilkku. Seuraava komento lähetetään sähköpostitse kahdelle vastaanottajalle.

$postitse-s 'Sähköpostin testaus'käyttäjätunnus 1@esimerkki.com, käyttäjänimi2@example.com<test.txt

Esimerkki 3: Käytä `mutt`-komentoa

Kuten `` mail '' -komento, `` mutt '' -komentoa ei ole oletusarvoisesti asennettu Ubuntuun. Asenna `mutt` -komento suorittamalla seuraava komento.

$sudosopivaAsentaamutt

`mutt` -komento toimii samalla tavalla kuin` mail` -komento, mutta `mutt` -komennolla on oma editori sähköpostin lähettämiseksi. Suorita seuraava komento kelvollisella sähköpostiosoitteella sähköpostin lähettämiseksi.

$heitti poistestiviesti|mutt-s Sähköpostin testauskäyttäjätunnus@example.com

Voit liittää minkä tahansa tiedoston käyttämällä -a-vaihtoehtoa komennolla mail tai mutt. Seuraava komento liittää items.txt -tiedoston sähköpostin lähettämisen aikana.

$heitti pois 'testiviesti' |mutt-s 'Viestin aihe' -kohteeseenitems.txt-käyttäjätunnus@gmail.com

Esimerkki 4: SSMTP-komennon käyttäminen

Toinen sähköpostikomento on `ssmtp` -komento. Jos ssmtp ei ole asennettu ennen, asenna paketti ensin. Asennuskomento ssmtp on esitetty esimerkissä-1. ssmtp- ja sendmail -komennot toimivat samalla tavalla.

Suorita seuraava komento kelvollisella sähköpostiosoitteella. Kirjoita sähköpostin aihe ja teksti. Poistu ja lähetä sähköposti painamalla ctrl+D.

$ssmtp käyttäjätunnus@gmail.com

Esimerkki 5: mailx-komennon käyttäminen

Voit lähettää HTML -sisältöä sähköpostin tekstinä lähettämättä vain tekstiviestiä. Luo test.html -niminen HTML -tiedosto käytettäväksi viestin runko -osana.

test.html

< html >
< vartalo >>
< h3 >Sähköpostin lähettäminen</ h3 >
< tehdä koko='2' väri='netto'>Testiviestin runko</ tehdä >
<</ vartalo >
</ html >

'mailx' -komento toimii kuten 'mail' -komento. Sinun on mainittava Content-Type tekstinä/html, jotta voit lähettää HTML-sisältöä viestin runkona `mailx`-komennossa. Seuraava komento lähettää test.html -tiedoston sisällön sähköpostiviestin rungona.

$ mailx-kohteeseen 'Sisältötyyppi: teksti/html' -s 'Sähköpostin lähettäminen mailxilla'
<test.html'[email protected]'

Kun tarkistat vastaanottajan sähköpostitilin postilaatikon, sähköpostiluettelo näkyy seuraavassa kuvassa.

Johtopäätös

Kun olet harjoittanut yllä olevia komentoja oikein, toivon, että lukija pystyy lähettämään sähköpostia komentoriviltä helposti Linuxissa.