Bash script e -mail küldéséhez

Bash Script Send Email



Az e -mail egy nagyon gyakori kommunikációs eszköz a mai világban. Az e -mail elküldésével bárki könnyen kommunikálhat vagy megoszthat bármilyen dokumentumot barátaival, családtagjaival és kollégáival. Általában az emberek bármilyen ingyenes e -mail szervert használnak, mint például a Gmail, a Yahoo, a Hotmail stb. De a Linux operációs rendszerben egyszerűen küldhet e -mailt a parancssorból. Linuxon sokféleképpen lehet e -mailt küldeni. Ez az oktatóanyag néhány gyakori és egyszerű módot kínál az e -mailek Ubuntu operációs rendszerben történő küldésére a terminálról.

Inicializálás:

Számos Linux parancs érhető el e -mailek küldéséhez a parancssorból vagy bash parancsfájl használatával. De minden e -mail küldési parancs nem működik, ha nincs SMTP szerver megfelelően beállítva a rendszerben. Beállíthatja saját SMTP-kiszolgálóját, hogy e-maileket küldjön a parancssorból, vagy használhatja bármelyik ismert SMTP-kiszolgálót, például a Gmailt vagy a Yahoo-t. Ebben az oktatóanyagban egy Gmail -fiók SMTP -kiszolgálóját használjuk. A feladat elvégzéséhez ki kell választania egy Gmail -fiókot, és engedélyeznie kell a „Biztonságosabb alkalmazások engedélyezése” lehetőséget ahhoz a fiókhoz, hogy elküldje az e -mailt. Látogasson el a következő oktatóanyagba, hogy engedélyezze ezt a lehetőséget.





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



Az opció engedélyezése után meg kell nyitnia a „/etc/ssmtp/ssmtp.conf” fájlt „root” jogosultsággal, és hozzá kell adnia a következő sorokat a fájl végéhez. A beállítás befejezéséhez be kell állítania e -mail címét „AuthUser”, e -mail jelszavát pedig „AuthPass” értékre.



Használja aSTARTTLS -t= IGEN
FromLineOverride= IGEN
gyökér= admin@example.com
mailhub= smtp.gmail.com:587
AuthUser= felhasználónév@gmail.com
AuthPass= jelszó

1. példa: A Sendmail parancs használata

A Linux egyik népszerű e -mail küldési parancsa a `sendmail`. A felhasználó könnyen küldhet e -mailt a parancssorból ezzel a paranccsal. Ha a Sendmail csomag nincs telepítve a rendszerbe, akkor futtassa a következő parancsot a csomag telepítéséhez.





$sudotalálótelepítésssmtp

Tegyük fel, hogy az e -mail tartalmát egy „email.txt” nevű fájlban tárolják a következő tartalommal. Itt a „Tárgy:” utáni szöveget e -mail tárgyként, a fennmaradó részt pedig e -mail törzsként küldjük el.

email.txt



Tárgy: E -mail küldése sendmail használatával
Az e -mail törzsének tesztelése

Futtassa a „sendmail” parancsot a címzett e -mail címével, például a következő paranccsal.

$levél küldésfelhasználónév@gmail.com<email.txt

2. példa: A „mail” parancs használata

A Linuxban leggyakrabban használt e -mail küldési parancs a `mail` parancs. Ez a parancs alapértelmezés szerint nincs telepítve az Ubuntura. Futtassa a következő parancsot a `mail` parancs telepítéséhez.

$sudotalálótelepítésmailutils

A következő parancs megmutatja ennek a parancsnak a verzióját, ha telepítve van a rendszerben.

$posta-V

Az '-s' opciót a 'mail' parancs használja az e-mail tárgyának meghatározására. Futtassa a 'mail' parancsot a '-s' opcióval az e-mail tárgyával és a címzett e-mail címével, mint a következő parancs. Cc: címet fog kérni. Ha nem szeretné használni a Cc: mezőt, akkor üresen hagyja, és nyomja meg az enter billentyűt. Írja be az üzenet törzsét, és nyomja meg a Ctrl+D billentyűkombinációt az e -mail elküldéséhez.

$posta-s 'tantárgy'felhasználónév@gmail.com

Ha az e -mail törzsét hozzá kívánja adni a parancshoz, használja a '<<<’ operator like the following command.

$posta-s 'Üzenet Tárgya'felhasználónév@gmail.com<<< 'tesztüzenet törzse'

A feladó e-mail címét a 'mail' paranccsal is hozzáadhatja az '-a' opció használatával. A következő parancs elküldi az e -mailt a tárgy, az „üzenet tárgya”, a feladó neve és e -mail címe, „Admin<[e -mail védett]> ”És a címzett e -mail címét,[e -mail védett]és az üzenet törzse, „tesztüzenet”.

$ mail-s 'Üzenet Tárgya' -nak nekFeladó: Adminisztrátor <admin@example.com >
felhasználónév@gmail.com<<< 'tesztüzenet'

E -mail üzenet törzsét is elküldheti az echo and pipe (|) paranccsal. A következő parancs a pipe (|) parancsot használja az üzenet törzsének elküldéséhez.

$kidobta 'tesztüzenet' |posta-s 'Üzenet Tárgya'felhasználónév@example.com

Az e -maileket több címzettnek is elküldheti a 'mail' paranccsal, és a címzettek címzettjeit vesszővel elválasztva adja hozzá. A következő parancs e -mailt küld két címzettnek.

$posta-s 'E -mail tesztelése'felhasználónév1@example.com, felhasználónév2@example.com<test.txt

3. példa: A `mutt 'parancs használata

A 'mail' parancshoz hasonlóan a 'mutt' parancs alapértelmezés szerint nincs telepítve az Ubuntura. A `mutt` parancs telepítéséhez futtassa a következő parancsot.

$sudotalálótelepítésmutt

A 'mutt' parancs a 'mail' parancshoz hasonlóan működik, de a 'mutt' parancs saját szerkesztővel rendelkezik az e -mail elküldéséhez. Az e -mail elküldéséhez futtassa a következő parancsot az érvényes e -mail címmel.

$kidobtatesztüzenet|mutt-s 'E -mail tesztelése'felhasználónév@example.com

Bármilyen fájlt csatolhat az '-a' opcióval a 'mail' vagy 'mutt' paranccsal. A következő parancs csatolja az items.txt fájlt az e -mail küldése közben.

$kidobta 'tesztüzenet' |mutt-s 'Üzenet Tárgya' -nak nekitems.txt-felhasználónév@gmail.com

4. példa: Az „SSMTP” parancs használata

Egy másik e -mail parancs az `ssmtp` parancs. Ha az ssmtp nincs korábban telepítve, akkor először telepítse a csomagot. Az ssmtp telepítési parancsa az 1. példában látható. Az ssmtp és a sendmail parancsok hasonlóan működnek.

Futtassa a következő parancsot az érvényes e -mail címmel. Írja be az e -mail tárgyát és törzsét. A kilépéshez és az e -mail elküldéséhez nyomja le a ctrl+D billentyűkombinációt.

$ssmtp felhasználónév@gmail.com

5. példa: A mailx parancs használata

A HTML -tartalmat e -mail törzseként is elküldheti anélkül, hogy elküldené a szöveges üzenetet. Hozzon létre egy „test.html” nevű HTML -fájlt, amelyet üzenettörzsként használhat.

test.html

< html >
< test >>
< h3 >E -mail küldés</ h3 >
< készíteni méret='2' szín='háló'>Tesztelő üzenet törzse</ készíteni >
<</ test >
</ html >

A 'mailx' parancs úgy működik, mint a 'mail' parancs. A Content-Type szöveget/html-t kell megemlítenie, hogy HTML-tartalmat küldjön a 'mailx' parancs üzenettörzseként. A következő parancs elküldi a „test.html” fájl tartalmát e -mail üzenet törzseként.

$ mailx-nak nek 'Content-Type: text/html' -s 'E -mail küldése mailx használatával'
<test.html'[email protected]'

Ha ellenőrizni fogja a címzett e -mail fiókjának beérkező leveleit, akkor az e -mailek listája a következő képként jelenik meg.

Következtetés

A fenti parancsok megfelelő gyakorlása után reméljük, hogy az olvasó könnyen tud e -mailt küldeni a parancssorból Linux alatt.