Bash script om e-mail te verzenden

e-mail is een veelgebruikt communicatiemedium in de wereld van vandaag. Iedereen kan gemakkelijk communiceren of elk document delen met vrienden, familieleden en collega ‘ s door de e-mail te verzenden. Over het algemeen, mensen gebruiken een gratis e-mailserver zoals Gmail, Yahoo, Hotmail etc. voor het versturen van de e-mail. Maar u kunt e-mail vanaf de opdrachtregel eenvoudig verzenden in Linux-besturingssysteem. Er zijn vele manieren om e-mail te verzenden in Linux. Enkele veel voorkomende en eenvoudige manieren om e-mail te verzenden in Ubuntu-besturingssysteem vanaf de terminal wordt weergegeven in deze tutorial.,

initialisatie:

veel Linux-commando ‘ s zijn beschikbaar om e-mail te verzenden vanaf de commandoregel of met behulp van een bash script. Maar elke e-mail verzenden commando zal niet werken als er geen SMTP-server goed is ingesteld in het systeem. U kunt uw eigen SMTP-server instellen om e-mail te verzenden vanaf de opdrachtregel of u kunt gebruik maken van een gratis SMTP-server van een bekende e-mail service provider zoals Gmail of Yahoo. SMTP-server van een Gmail-account wordt gebruikt in deze tutorial., Om deze taak uit te voeren, je moet een Gmail-account te selecteren en de optie van ‘laat minder veilige apps’ voor dat account om de e-mail te verzenden. U kunt de volgende tutorial bezoeken om deze optie in te schakelen.

na het inschakelen van deze optie, moet u het bestand ‘ /etc/ssmtp/ssmtp openen.conf ‘met’ root ‘ privilege en voeg de volgende regels toe aan het einde van het bestand. Je moet je e-mailadres instellen op ‘AuthUser’ en je e-mailwachtwoord op ‘AuthPass’ om de setup te voltooien.

Voorbeeld-1: het gebruik van sendmail Commando

een van de populaire e-mail versturen commando `s van Linux is`Sendmail’., De gebruiker kan eenvoudig e-mail verzenden vanaf de opdrachtregel met behulp van deze opdracht. Als sendmail package niet in het systeem is geïnstalleerd, voer dan het volgende commando uit om het pakket te installeren.

$ sudo apt install ssmtp

stel dat de e-mailinhoud wordt opgeslagen in een bestand met de naam ‘email.txt ‘ met de volgende inhoud. Hier wordt de tekst na de ‘onderwerp:’ verzonden als e-mailonderwerp en het resterende deel wordt verzonden als e-mailtekst.

e-mail.,txt

Subject: e-mail versturen met sendmail
Testing e-mail body

voer het commando `sendmail’ uit met het e-mailadres van de ontvanger zoals het volgende commando.

$ sendmail [email protected] < email.txt

Voorbeeld-2: Met behulp van ‘mail’ Commando

het meest voorkomende commando voor het verzenden van e-mail in Linux is `mail` Commando. Deze opdracht is niet standaard geïnstalleerd op Ubuntu. Voer de volgende opdracht uit om de opdracht `mail` te installeren.,

$ sudo apt install mailutils

het volgende commando toont de versie van dit commando als het in het systeem is geïnstalleerd.

$ mail-V

‘-s’ optie wordt gebruikt in het commando `mail` om het onderwerp van de e-mail te definiëren. Voer’ mail ‘commando uit met’ – S ‘ optie met e-mailonderwerp en het e-mailadres van de ontvanger, zoals het volgende commando. Het zal vragen om Cc: adres. Als u het veld Cc: niet wilt gebruiken, houd het dan leeg en druk op enter., Typ de berichttekst en druk op Ctrl + D om de e-mail te verzenden.

$ mail -s ‘onderwerp’ [email protected]

Als u wilt toevoegen hoofdtekst van e-mail in de opdracht gebruik dan ‘<<<‘ operator zoals de volgende opdracht.

$ mail-s ‘message subject’ gebruikersnaam@gmail.,com <<< ‘Testing message body’

u kunt ook het e-mailadres van de afzender toevoegen met de opdracht `mail` met behulp van de ‘ – a optie. Het volgende commando stuurt de e-mail met het onderwerp, ‘message subject’, de naam en het e-mailadres van de afzender, ‘Admin<>’ en het e-mailadres van de ontvanger, en de berichttekst, ‘testing message’.,

$ mail -s ‘onderwerp bericht’ -een Van:Admin\<[email protected]\>
[email protected] <<< ‘test bericht’

U kunt ook een e-mailbericht verzenden lichaam met behulp van echo -, en pipe( | ) opdracht. Het volgende commando gebruikt het commando pipe (|) om de berichttekst te verzenden.

$ echo” testing message “| mail-s” message subject ” gebruikersnaam@example.,com

e-mail kan naar meerdere ontvangers worden verzonden door het commando `mail` te gebruiken en de adressen van de ontvangers toe te voegen door komma’ s te scheiden. Het volgende commando zal een e-mail naar twee ontvangers worden verzonden.

$ mail-s “Testing email” [email protected] , [email protected] < test.txt

Voorbeeld-3: met behulp van `mutt` Commando

zoals `mail` Commando, `mutt` commando is niet standaard geïnstalleerd op Ubuntu., Voer de volgende opdracht uit om de opdracht `mutt` te installeren.

$ sudo apt install mutt

`mutt` commando werkt vergelijkbaar met `mail` Commando, maar `mutt` commando heeft een eigen editor om de e-mail te verzenden. Voer de volgende opdracht uit met het geldige e-mailadres om de e-mail te verzenden.

$ echo “testing message” | mutt-s “Testing Email” [email protected]

u kunt elk bestand toevoegen met behulp van de ‘-A’ optie met `mail` of `mutt` Commando. Het volgende commando zal de bestandsitems bijvoegen.,txt tijdens het verzenden van de e-mail.

$ echo “testing message” | mutt-s ” message subject “- a items.txt … [email protected]

Voorbeeld-4: met behulp van ‘SSMTP’ Commando

een ander e-mail commando is `ssmtp` Commando. Als ssmtp niet eerder is geïnstalleerd, installeer dan eerst het pakket. Het installatie commando voor ssmtp wordt getoond in het voorbeeld-1. ssmtp en sendmail commando ‘ s werken op dezelfde manier.

voer het volgende commando uit met het geldige e-mailadres. Typ het e-mailonderwerp en de hoofdtekst. Druk op ctrl + D om af te sluiten en de e-mail te verzenden.,

Voorbeeld-5: met mailx-opdracht

kunt u HTML-inhoud als e-mailinhoud verzenden zonder alleen het sms-bericht te verzenden. Maak een HTML-bestand met de naam ‘test.html’ om als berichttekst te gebruiken.

test.,
<body>>
<h3> Email Sending </h3>
<font size=”2″ color=”red”>Testing Message body</font>
<</body>
</html>

`mailx` command works like `mail` command., Je moet Content-Type vermelden als tekst / html om HTML-inhoud te verzenden als de berichttekst in het commando` mailx’. Het volgende commando stuurt de inhoud van ‘test.html ‘ bestand als de inhoud van het e-mailbericht.

$ mailx-a ‘Content-Type: text/html’ -s “Sending email by using mailx”
< test.html “”

wanneer u het inbox van ontvanger e-mailaccount aanvinkt, wordt de lijst met e-mails weergegeven als de volgende afbeelding.,

conclusie

na het correct oefenen van de bovenstaande commando ‘ s, hoop ik dat de lezer gemakkelijk e-mail vanaf de commandoregel kan verzenden onder Linux.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Spring naar toolbar