Bash -skript for å sende e -post

Bash Script Send Email



E -post er et veldig vanlig kommunikasjonsmedium i dagens verden nå. Alle kan enkelt kommunisere eller dele dokumenter med venner, familiemedlemmer og kolleger ved å sende e -posten. Vanligvis bruker folk hvilken som helst gratis e -postserver som Gmail, Yahoo, Hotmail etc. for å sende e -posten. Men du kan enkelt sende e -post fra kommandolinjen i Linux -operativsystemet. Det er mange måter å sende e -post på i Linux. Noen vanlige og enkle måter å sende e -post i Ubuntu -operativsystemet fra terminalen er vist i denne opplæringen.

Initialisering:

Mange Linux -kommandoer er tilgjengelige for å sende e -post fra kommandolinjen eller ved å bruke et bash -skript. Men enhver kommando for sending av e -post fungerer ikke hvis ingen SMTP -server er riktig konfigurert i systemet. Du kan konfigurere din egen SMTP-server for å sende e-post fra kommandolinjen, eller du kan bruke hvilken som helst gratis SMTP-server fra en velkjent e-postleverandør som Gmail eller Yahoo. SMTP -server for en Gmail -konto brukes i denne opplæringen. For å utføre denne oppgaven må du velge en Gmail -konto og aktivere alternativet 'Tillat mindre sikre apper' for at kontoen skal sende e -posten. Du kan besøke følgende opplæring for å aktivere dette alternativet.







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



Etter at du har aktivert dette alternativet, må du åpne filen ‘/etc/ssmtp/ssmtp.conf’ med ‘root’ -rettighet og legge til følgende linjer på slutten av filen. Du må sette e -postadressen din til 'AuthUser' og e -postpassordet til 'AuthPass' for å fullføre oppsettet.



Bruk STARTTLS= JA
FromLineOverride= JA
rot= admin@example.com
mailhub= smtp.gmail.com:587
AuthUser= brukernavn@gmail.com
AuthPass= passord

Eksempel-1: Bruke Sendmail-kommando

En av de populære e -postkommandoene for Linux er `sendmail`. Brukeren kan enkelt sende e -post fra kommandolinjen ved å bruke denne kommandoen. Hvis Sendmail -pakken ikke er installert i systemet, kjører du følgende kommando for å installere pakken.





$sudopassendeinstalleressmtp

Anta at e -postinnholdet er lagret i en fil som heter ‘email.txt’ med følgende innhold. Her vil teksten etter 'Emne:' bli sendt som e -postemne, og den resterende delen vil bli sendt som e -posttekst.

email.txt



Emne: Sender e -post med sendmail
Tester e -posttekst

Kjør kommandoen `sendmail 'med mottakerens e -postadresse som følgende kommando.

$sendmailbrukernavn@gmail.com<email.txt

Eksempel-2: Bruke kommandoen ‘mail’

Den vanligste kommandoen for å sende e -post i Linux er kommandoen `mail`. Denne kommandoen er ikke installert på Ubuntu som standard. Kjør følgende kommando for å installere `mail` -kommandoen.

$sudopassendeinstalleremailutils

Følgende kommando viser versjonen av denne kommandoen hvis den er installert i systemet.

$post-V

'-S' alternativet brukes i kommandoen 'mail' for å definere emnet for e-posten. Kjør kommandoen 'e-post' med '-s' med e-postemne og mottakerens e-postadresse som følgende kommando. Det vil be om Cc: adresse. Hvis du ikke vil bruke Cc: -feltet, hold det tomt og trykk enter. Skriv inn meldingsdelen og trykk Ctrl+D for å sende e -posten.

$post-s 'Emne'brukernavn@gmail.com

Hvis du vil legge til en e -postmelding i kommandoen, bruker du '<<<’ operator like the following command.

$post-s 'meldingsemne'brukernavn@gmail.com<<< 'testing message body'

Du kan også legge til avsenderens e-postadresse med kommandoen `mail` ved å bruke alternativet '-a'. Følgende kommando sender e -posten med emnet, 'meldingsemne', avsenderens navn og e -postadresse, 'Admin<[e -postbeskyttet]> ’Og mottakerens e -postadresse,[e -postbeskyttet]og meldingstekst, 'testmelding'.

$ post-s 'meldingsemne' -tilFra: Admin <admin@eksempel.com >
brukernavn@gmail.com<<< 'testmelding'

Du kan også sende en e -postmelding ved hjelp av kommandoen echo and pipe (|). Følgende kommando bruker kommandoen pipe (|) til å sende meldingsteksten.

$kastet ut 'testmelding' |post-s 'meldingsemne'brukernavn@example.com

E -post kan sendes til flere mottakere ved å bruke kommandoen `post` og legge til mottakerens adresser ved å skille komma. Følgende kommando vil bli sendt en e -post til to mottakere.

$post-s 'Testing av e -post'brukernavn1@eksempel.com, brukernavn2@example.com<test.txt

Eksempel-3: Bruke kommandoen `mutt`

Som kommando `post`, er kommandoen` mutt` ikke installert på Ubuntu som standard. Kjør følgende kommando for å installere kommandoen `mutt`.

$sudopassendeinstalleremutt

`mutt` -kommandoen fungerer på samme måte som` mail` -kommandoen, men `mutt` -kommandoen har sin egen editor for å sende e -posten. Kjør følgende kommando med den gyldige e -postadressen for å sende e -posten.

$kastet uttestmelding|mutt-s 'Testing av e -post'brukernavn@example.com

Du kan legge ved hvilken som helst fil ved å bruke ‘-a’ med kommandoen ‘mail’ eller ‘mutt’. Følgende kommando vil legge ved filen items.txt mens du sender e -posten.

$kastet ut 'testmelding' |mutt-s 'meldingsemne' -tilitems.txt-brukernavn@gmail.com

Eksempel-4: Bruk ‘SSMTP’ kommando

En annen e -postkommando er kommandoen `ssmtp`. Hvis ssmtp ikke er installert før, installer du pakken først. Installasjonskommandoen for ssmtp er vist i eksempel-1. ssmtp og sendmail kommandoer fungerer på samme måte.

Kjør følgende kommando med den gyldige e -postadressen. Skriv inn e -postemnet og brødteksten. Trykk ctrl+D for å avslutte og sende e -posten.

$ssmtp brukernavn@gmail.com

Eksempel 5: Bruke mailx Command

Du kan sende HTML -innhold som e -posttekst uten å bare sende tekstmeldingen. Lag en HTML -fil med navnet 'test.html' for å brukes som meldingstekst.

test.html

< html >
< kropp >>
< h3 >Sender e -post</ h3 >
< gjøre størrelse='2' farge='nett'>Tester meldingstekst</ gjøre >
<</ kropp >
</ html >

kommandoen 'mailx' fungerer som 'kommando'. Du må nevne innholdstype som tekst/html for å sende HTML-innhold som meldingstekst i kommandoen `mailx`. Følgende kommando sender innholdet i ‘test.html’ -filen som e -postmeldingstekst.

$ mailx-til 'Innholdstype: tekst/html' -s 'Sende e -post ved å bruke mailx'
<test.html'[e -postbeskyttet]'

Når du vil sjekke innboksen til mottakerens e -postkonto, vil listen over e -poster vises som følgende bilde.

Konklusjon

Etter å ha øvd på ovennevnte kommandoer ordentlig, håper leseren enkelt kan sende e -post fra kommandolinjen i Linux.