Bash skripts e -pasta nosūtīšanai

Bash Script Send Email



E -pasts ir ļoti izplatīts saziņas līdzeklis mūsdienu pasaulē. Ikviens var viegli sazināties vai koplietot jebkuru dokumentu ar draugiem, ģimenes locekļiem un kolēģiem, nosūtot e -pastu. Parasti e -pasta sūtīšanai cilvēki izmanto jebkuru bezmaksas e -pasta serveri, piemēram, Gmail, Yahoo, Hotmail utt. Bet jūs varat viegli nosūtīt e -pastu no komandrindas Linux operētājsistēmā. Ir daudz veidu, kā nosūtīt e -pastu Linux. Šajā apmācībā ir parādīti daži izplatīti un vienkārši veidi, kā nosūtīt e -pastu Ubuntu operētājsistēmā no termināļa.

Inicializācija:

Daudzas Linux komandas ir pieejamas, lai nosūtītu e -pastu no komandrindas vai izmantojot bash skriptu. Bet jebkura e -pasta sūtīšanas komanda nedarbosies, ja sistēmā nav pareizi iestatīts neviens SMTP serveris. Jūs varat iestatīt savu SMTP serveri, lai sūtītu e-pastu no komandrindas, vai arī varat izmantot jebkuru pazīstama e-pasta pakalpojumu sniedzēja, piemēram, Gmail vai Yahoo, bezmaksas SMTP serveri. Šajā apmācībā tiek izmantots Gmail konta SMTP serveris. Lai veiktu šo uzdevumu, jums jāizvēlas Gmail konts un jāiespējo opcija “Atļaut mazāk drošām lietotnēm”, lai šis konts varētu nosūtīt e -pastu. Lai iespējotu šo opciju, varat apmeklēt šo apmācību.







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



Pēc šīs opcijas iespējošanas jums ir jāatver fails “/etc/ssmtp/ssmtp.conf” ar “root” privilēģijām un faila beigās jāpievieno šādas rindas. Lai pabeigtu iestatīšanu, jums ir jāiestata sava e -pasta adrese uz “AuthUser” un e -pasta parole uz “AuthPass”.



IzmantojietSTARTTLS= JĀ
NoLineOverride= JĀ
sakne= administrators@example.com
mailhub= smtp.gmail.com:587
AuthUser= lietotājvārds@gmail.com
AuthPass= parole

1. piemērs: Sendmail komandas izmantošana

Viena no populārākajām Linux e -pasta sūtīšanas komandām ir 'sendmail'. Izmantojot šo komandu, lietotājs var viegli nosūtīt e -pastu no komandrindas. Ja Sendmail pakotne nav instalēta sistēmā, palaidiet šo komandu, lai instalētu pakotni.





$sudotrāpīgsuzstādītssmtp

Pieņemsim, ka e -pasta saturs tiek saglabāts failā ar nosaukumu “email.txt” ar šādu saturu. Šeit teksts aiz “Temats:” tiks nosūtīts kā e -pasta tēma, bet pārējā daļa tiks nosūtīta kā e -pasta pamatteksts.

e -pasts.txt



Temats: E -pasta sūtīšana, izmantojot sendmail
E -pasta pamatteksta pārbaude

Palaidiet komandu sendmail ar saņēmēja e -pasta adresi, piemēram, šādu komandu.

$Nosūtīt pastulietotājvārds@gmail.com<e -pasts.txt

2. piemērs: komandas “mail” izmantošana

Visizplatītākā e -pasta sūtīšanas komanda Linux ir komanda 'mail'. Šī komanda pēc noklusējuma nav instalēta Ubuntu. Palaidiet šādu komandu, lai instalētu komandu 'mail'.

$sudotrāpīgsuzstādītpastautils

Šī komanda parādīs šīs komandas versiju, ja tā ir instalēta sistēmā.

$pastu-V

'-S' opcija tiek izmantota komandā 'mail', lai definētu e-pasta tēmu. Palaidiet komandu “pasts” ar opciju “-s” ar e-pasta tēmu un saņēmēja e-pasta adresi, piemēram, šādu komandu. Tas prasīs Cc: adresi. Ja nevēlaties izmantot lauku Cc:, atstājiet to tukšu un nospiediet enter. Ierakstiet ziņojuma pamattekstu un nospiediet Ctrl+D, lai nosūtītu e -pastu.

$pastu-s 'priekšmets'lietotājvārds@gmail.com

Ja komandā vēlaties pievienot e -pasta ziņojuma pamattekstu, izmantojiet “<<<’ operator like the following command.

$pastu-s 'ziņojuma tēma'lietotājvārds@gmail.com<<< 'pārbaudes ziņojuma pamatteksts'

Varat arī pievienot sūtītāja e-pasta adresi ar komandu 'mail', izmantojot opciju '-a'. Šī komanda nosūtīs e -pastu ar tēmu, “ziņojuma tēmu”, sūtītāja vārdu un e -pasta adresi “Administrators”<[e -pasts aizsargāts]> ”Un saņēmēja e -pasta adresi,[e -pasts aizsargāts]un ziņojuma pamatteksts - “pārbaudes ziņojums”.

$ pasts-s 'ziņojuma tēma' -uzNo: Administrators <admin@example.com >
lietotājvārds@gmail.com<<< 'pārbaudes ziņojums'

Varat arī nosūtīt e -pasta ziņojuma pamattekstu, izmantojot komandu echo and pipe (|). Šī komanda izmanto komandu pipe (|), lai nosūtītu ziņojuma pamattekstu.

$izmest ārā 'pārbaudes ziņojums' |pastu-s 'ziņojuma tēma'lietotājvārds@example.com

E -pastu var nosūtīt vairākiem adresātiem, izmantojot komandu 'mail' un pievienojot adresātu adreses, atdalot komatu. Šai komandai tiks nosūtīts e -pasts diviem adresātiem.

$pastu-s 'E -pasta pārbaude'lietotājvārds1@example.com, lietotājvārds2@example.com<test.txt

Piemērs-3: Izmantojot komandu 'mutt'

Tāpat kā komanda 'pasts', arī komanda 'mutt' pēc noklusējuma nav instalēta Ubuntu. Palaidiet šādu komandu, lai instalētu komandu `mutt`.

$sudotrāpīgsuzstādītmutt

Komanda 'mutt' darbojas līdzīgi komandai 'pasts', bet komandai 'mutt' ir savs redaktors e -pasta nosūtīšanai. Lai nosūtītu e -pastu, izpildiet šo komandu ar derīgu e -pasta adresi.

$izmest ārātestēšanas ziņa|mutt-s 'E -pasta pārbaude'lietotājvārds@example.com

Jūs varat pievienot jebkuru failu, izmantojot opciju “-a” ar komandu “mail” vai “mutt”. Sūtot e -pastu, šī komanda pievienos failu items.txt.

$izmest ārā 'pārbaudes ziņojums' |mutt-s 'ziņojuma tēma' -uzitems.txt-lietotājvārds@gmail.com

4. piemērs: komandas “SSMTP” izmantošana

Vēl viena e -pasta komanda ir komanda ssmtp. Ja ssmtp nav instalēts iepriekš, vispirms instalējiet pakotni. Ssmtp instalēšanas komanda ir parādīta 1. piemērā. ssmtp un sendmail komandas darbojas līdzīgi.

Izpildiet šo komandu ar derīgu e -pasta adresi. Ierakstiet e -pasta tēmu un pamattekstu. Nospiediet ctrl+D, lai izietu un nosūtītu e -pastu.

$ssmtp lietotājvārds@gmail.com

5. piemērs: Mailx komandas izmantošana

Jūs varat nosūtīt HTML saturu kā e -pasta tekstu, nesūtot tikai īsziņu. Izveidojiet HTML failu ar nosaukumu “test.html”, lai to izmantotu kā ziņojuma pamattekstu.

test.html

< html >
< ķermenis >>
< h3 >E -pasta sūtīšana</ h3 >
< veidot Izmērs='2' krāsa='tīkls'>Testēšanas ziņojuma pamatteksts</ veidot >
<</ ķermenis >
</ html >

'mailx' komanda darbojas kā komanda 'mail'. Lai nosūtītu HTML saturu kā ziņojuma tekstu komandā 'mailx', jums ir jāpiemin Content-Type kā teksts/html. Šī komanda nosūtīs faila “test.html” saturu kā e -pasta ziņojuma pamattekstu.

$ mailx-uz 'Satura tips: teksts/html' -s 'E -pasta sūtīšana, izmantojot mailx'
<test.html'[aizsargāts ar e -pastu]'

Kad pārbaudīsit saņēmēja e -pasta konta iesūtni, e -pastu saraksts tiks parādīts kā šāds attēls.

Secinājums

Pēc tam, kad esat pareizi praktizējis iepriekš minētās komandas, ceru, ka lasītājs varēs viegli nosūtīt e -pastu no komandrindas operētājsistēmā Linux.