باش النصي لإرسال البريد الإلكتروني

Bash Script Send Email



البريد الإلكتروني هو وسيلة اتصال شائعة جدًا في عالم اليوم. يمكن لأي شخص بسهولة التواصل أو مشاركة أي مستند مع الأصدقاء وأفراد الأسرة والزملاء عن طريق إرسال البريد الإلكتروني. بشكل عام ، يستخدم الأشخاص أي خادم بريد إلكتروني مجاني مثل Gmail و Yahoo و Hotmail وما إلى ذلك لإرسال البريد الإلكتروني. ولكن يمكنك إرسال بريد إلكتروني من سطر الأوامر بسهولة في نظام التشغيل Linux. هناك العديد من الطرق لإرسال البريد الإلكتروني في Linux. يتم عرض بعض الطرق الشائعة والسهلة لإرسال البريد الإلكتروني في نظام التشغيل Ubuntu من الجهاز في هذا البرنامج التعليمي.

التهيئة:

يتوفر العديد من أوامر Linux لإرسال بريد إلكتروني من سطر الأوامر أو باستخدام برنامج نصي باش. ولكن لن يعمل أي أمر إرسال بريد إلكتروني إذا لم يتم إعداد خادم SMTP بشكل صحيح في النظام. يمكنك إعداد خادم SMTP الخاص بك لإرسال بريد إلكتروني من سطر الأوامر أو يمكنك استخدام أي خادم SMTP مجاني لأي مزود خدمة بريد إلكتروني معروف مثل Gmail أو Yahoo. يتم استخدام خادم SMTP لحساب Gmail في هذا البرنامج التعليمي. للقيام بهذه المهمة ، يجب عليك تحديد حساب Gmail وتمكين خيار 'السماح بالتطبيقات الأقل أمانًا' لهذا الحساب لإرسال البريد الإلكتروني. يمكنك زيارة البرنامج التعليمي التالي لتمكين هذا الخيار.







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



بعد تمكين هذا الخيار ، يجب عليك فتح الملف '/etc/ssmtp/ssmtp.conf' بامتياز 'الجذر' وإضافة الأسطر التالية في نهاية الملف. يجب عليك تعيين عنوان بريدك الإلكتروني على 'AuthUser' وكلمة مرور بريدك الإلكتروني على 'AuthPass' لإكمال الإعداد.



استخدم STARTLS= نعم
FromLineOverride= نعم
جذر= مشرف@example.com
mailhub= smtp.gmail.com:587
المؤلف= اسم المستخدم@gmail.com
AuthPass= كلمة المرور

مثال -1: استخدام أمر Sendmail

أحد أوامر إرسال البريد الإلكتروني الشائعة في Linux هو 'sendmail'. يمكن للمستخدم بسهولة إرسال بريد إلكتروني من سطر الأوامر باستخدام هذا الأمر. إذا لم يتم تثبيت حزمة Sendmail في النظام ، فقم بتشغيل الأمر التالي لتثبيت الحزمة.





$سودوملائمتثبيتssmtp

لنفترض أنه تم تخزين محتوى البريد الإلكتروني في ملف يسمى 'email.txt' بالمحتوى التالي. هنا ، سيتم إرسال النص بعد 'الموضوع:' كموضوع للبريد الإلكتروني وسيتم إرسال الجزء المتبقي كنص للبريد الإلكتروني.

email.txt



الموضوع: إرسال بريد إلكتروني باستخدام sendmail
اختبار هيئة البريد الإلكتروني

قم بتشغيل الأمر 'sendmail' باستخدام عنوان البريد الإلكتروني للمستلم مثل الأمر التالي.

$ارسل بريداسم االمستخدم@gmail.com<email.txt

مثال 2: استخدام الأمر 'mail'

الأمر الأكثر شيوعًا لإرسال البريد الإلكتروني في Linux هو أمر 'mail'. لم يتم تثبيت هذا الأمر على Ubuntu افتراضيًا. قم بتشغيل الأمر التالي لتثبيت أمر 'mail'.

$سودوملائمتثبيتMailutils

سيعرض الأمر التالي إصدار هذا الأمر إذا كان مثبتًا في النظام.

$بريد-الخامس

يُستخدم الخيار '-s' في الأمر 'mail' لتحديد موضوع البريد الإلكتروني. قم بتشغيل الأمر 'mail' بواسطة الخيار '-s' مع موضوع البريد الإلكتروني وعنوان البريد الإلكتروني للمستلم مثل الأمر التالي. سيطلب عنوان 'نسخة إلى'. إذا كنت لا تريد استخدام حقل 'نسخة إلى:' ، فاحتفظ به فارغًا واضغط على 'إدخال'. اكتب نص الرسالة واضغط على Ctrl + D لإرسال البريد الإلكتروني.

$بريد 'موضوعات'اسم االمستخدم@gmail.com

إذا كنت تريد إضافة نص رسالة البريد الإلكتروني في الأمر ، فاستخدم '<<<’ operator like the following command.

$بريد 'موضوع الرسالة'اسم االمستخدم@gmail.com<<< 'نص رسالة الاختبار'

يمكنك أيضًا إضافة عنوان البريد الإلكتروني للمرسل باستخدام الأمر 'mail' باستخدام الخيار '-a'. سيرسل الأمر التالي البريد الإلكتروني مع الموضوع و 'موضوع الرسالة' واسم المرسل وعنوان البريد الإلكتروني ، 'المسؤول<[البريد الإلكتروني محمي]> 'وعنوان البريد الإلكتروني للمستلم ،[البريد الإلكتروني محمي]ونص الرسالة ، 'اختبار الرسالة'.

$ mail 'موضوع الرسالة' -إلىمن: Admin <مشرف@example.com >
اسم االمستخدم@gmail.com<<< 'رسالة اختبار'

يمكنك أيضًا إرسال نص رسالة بريد إلكتروني باستخدام الأمر echo and pipe (|). يستخدم الأمر التالي أمر توجيه الإخراج (|) لإرسال نص الرسالة.

$رما - طرد - قذف 'رسالة اختبار' |بريد 'موضوع الرسالة'اسم االمستخدم@example.com

يمكن إرسال البريد الإلكتروني إلى عدة مستلمين باستخدام أمر 'mail' وإضافة عناوين المستلمين عن طريق فصل الفاصلة. سيتم إرسال رسالة بريد إلكتروني إلى الأمر التالي إلى اثنين من المستلمين.

$بريد 'اختبار البريد الإلكتروني'اسم المستخدم 1@example.com ، اسم المستخدم 2@example.com<test.txt

مثال 3: استخدام الأمر 'mutt'

مثل الأمر `mail` ، فإن الأمر` mutt` غير مثبت على Ubuntu افتراضيًا. قم بتشغيل الأمر التالي لتثبيت الأمر `mutt`.

$سودوملائمتثبيتالمغفل

يعمل الأمر `mutt` بشكل مشابه لأمر` mail` لكن الأمر `mutt` له محرر خاص لإرسال البريد الإلكتروني. قم بتشغيل الأمر التالي باستخدام عنوان البريد الإلكتروني الصحيح لإرسال البريد الإلكتروني.

$رما - طرد - قذفرسالة الاختبار|المغفل 'اختبار البريد الإلكتروني'اسم االمستخدم@example.com

يمكنك إرفاق أي ملف باستخدام الخيار '-a' مع 'mail' أو الأمر 'mutt'. سيقوم الأمر التالي بإرفاق ملف items.txt أثناء إرسال البريد الإلكتروني.

$رما - طرد - قذف 'رسالة اختبار' |المغفل 'موضوع الرسالة' -إلىitems.txt-اسم االمستخدم@gmail.com

مثال 4: استخدام الأمر 'SSMTP'

أمر بريد إلكتروني آخر هو الأمر `ssmtp`. إذا لم يتم تثبيت ssmtp من قبل ، فقم بتثبيت الحزمة أولاً. يظهر أمر التثبيت الخاص بـ ssmtp في المثال -1. تعمل أوامر ssmtp و sendmail بالمثل.

قم بتشغيل الأمر التالي باستخدام عنوان بريد إلكتروني صالح. اكتب موضوع البريد الإلكتروني ونصه. اضغط على ctrl + D للخروج وإرسال البريد الإلكتروني.

$اسم مستخدم ssmtp@gmail.com

مثال 5: استخدام الأمر mailx

يمكنك إرسال محتوى HTML كنص للبريد الإلكتروني دون إرسال الرسالة النصية فقط. أنشئ ملف HTML باسم 'test.html' لاستخدامه كنص رسالة.

test.html

< لغة البرمجة >
< هيئة >>
< h3 >إرسال البريد الإلكتروني</ h3 >
< صنع بحجم='2' لون='صافي'>نص رسالة الاختبار</ صنع >
<</ هيئة >
</ لغة البرمجة >

يعمل الأمر `mailx` مثل أمر` mail`. يجب عليك ذكر نوع المحتوى كنص / html لإرسال محتوى HTML كنص رسالة في الأمر `mailx`. سيرسل الأمر التالي محتوى ملف 'test.html' كنص رسالة البريد الإلكتروني.

$ mailx-إلى 'نوع المحتوى: نص / html' 'إرسال بريد إلكتروني باستخدام mailx'
<test.html'[بريد إلكتروني محمي]'

عندما تتحقق من البريد الوارد لحساب البريد الإلكتروني للمستلم ، ستظهر قائمة رسائل البريد الإلكتروني على النحو التالي.

استنتاج

بعد ممارسة الأوامر المذكورة أعلاه بشكل صحيح ، آمل أن يتمكن القارئ من إرسال بريد إلكتروني من سطر الأوامر بسهولة في Linux.