בעת עבודה עם שורת הפקודה, יש פעמים שבהן ייתכן שתרצה לשלוח הודעת אימייל באופן ידני כדי לתקשר מידע באנר אחד, לומר פקודה מורכבת או הערה חשובה לעצמך או לחבר. בדרך כלל, זה מחייב אותך לפתוח דפדפן אינטרנט, להיכנס לחשבון הדוא"ל שלך, מסגרת דוא"ל המכיל את המידע הדרוש, ולאחר מכן לשלוח אותו.

זה יותר מדי זמן בשביל דבר קטן, לא? מה אם אתה יכול לעשות את זה משורת הפקודה עצמה? כן, זה אפשרי, ואנחנו כבר דנו כמה דרכים לעשות את זה בלינוקס. במאמר זה, נדון שלוש דרכים נוספות לשלוח דוא"ל משורת הפקודה ב- Linux.

שלח מייל

Sendmail, כידוע לך, הוא שרת ה- SMTP הקלאסי מעולם UNIX. זה בדרך כלל מגיע מותקן מראש על הפצות לינוקס רבות, אבל אם זה לא המקרה עם תיבת לינוקס שלך, אתה יכול בקלות להתקין אותו מאגרים סטנדרטיים. לדוגמה, משתמשים במערכות מבוססות דביאן, כמו אובונטו, יכולים להוריד ולהתקין אותו באמצעות הפקודה הבאה:

 sudo apt-get להתקין mailutils 

לאחר ההתקנה, אתה יכול בקלות ובמהירות לשלוח דוא"ל באמצעות הפקודה sendmail . הנה דוגמא:

 הד "זוהי שוב הודעת אימייל לבדיקה" Sendmail [receivers-email-address] 

הפקודה הנ"ל שולחת הודעת אימייל המכילה את הטקסט "זוהי הודעת דוא"ל שניתנת לבדיקה" אל "[receivers-email-address]" (הקפד להחליף אותה, כולל בסוגריים, עם כתובת האימייל האמיתית של המקלט).

כאשר השתמשתי כתובת הדוא"ל שלי בפקודה לעיל, קיבלתי את הדוא"ל הבא:

כמו במקרה שלי, הדוא"ל יכול לנחות בתיקיית דואר הזבל שלך, לכן הקפד לבדוק שם.

הפקודה השתמשנו רק הכיל רק את הגוף של הדוא"ל. תוכל גם להוסיף פרטים נוספים כמו נושא, מ- ועוד. לדוגמה, הפקודה הבאה מכילה שדות נוספים אלה, וניתן להריץ אותם כ- Script:

 הד "מאת: [email protected] אל: [email protected] נושא: מבחן HTML דואר אלקטרוני זוהי בדיקה דוא"ל." | Sendmail -t 

הנה תמונת מצב של הודעת האימייל שקיבלתי כאשר הפקודה הנ"ל הופעלה:

Telnet

ניתן גם להשתמש בפקודה Telnet כדי לשלוח הודעת דוא"ל משורת הפקודה. כדי לעשות זאת, הפעל את הפקודות הבאות (הקפד להחליף את "[senders-email-address]" ו - "[receivers-email-address]" עם כתובת האימייל של השולח והמקלט, בהתאמה):

 שלח דואר אלקטרוני מאת: [senders-email-address] rcpt אל: [receivers-email-address] נתונים 

בשלב זה, אתה אמור לראות הנחיה איפה אתה צריך להזין את הגוף של הדוא"ל ולוודא את ההודעה מסתיים עם newline ואחריו נקודה (.). לאחר שתסיים, הקש enter כדי לשלוח את הודעת האימייל ולאחר מכן הקלד quit כדי לצאת מהיישום.

במקרה שלי, קיבלתי את האימייל הבא:

Ssmtp

SSMTP הוא כלי המספק דואר אלקטרוני ממחשב מקומי ל- mailhost מוגדר (mailhub). משתמשי דביאן יכולים להוריד ולהתקין את התוכנית באמצעות הפקודה הבאה:

 sudo apt-get להתקין ssmtp 

לאחר ההתקנה, פתח את הקובץ /etc/ssmtp/ssmtp.conf וערוך אותו כדי לוודא שהוא מכיל את המידע הבא:

 mailhub = smtp.gmail.com: 587 UseSTARTTLS = YES AuthUser = [senders-email-address] AuthPass = [שלח-דוא"ל- login-password] TLS_CA_File = / etc / pki / tls / certs / ca-bundle.crt 

כמו תמיד, הקפד להחליף את "[senders-email-address]" ואת "[senders-email-login-password]" עם ערכים מתאימים. עכשיו, כדי לשלוח הודעת דוא"ל באמצעות ssmtp, השתמש בפקודה הבאה:

 ssmtp [receivers-email-address] נושא: [subject-line-here] [Body of email] 

שוב, החלף את "[receivers-email-address]", "[subject-line-here]" ו- "Body of email" עם ערכים מתאימים ושלח את האימייל על ידי הקשה על "Ctrl + D."

אם מתקבלת השגיאה הבאה,

 ssmtp: ההרשאה נכשלה (534 5.7.9 http://support.google.com/accounts/bin/answer.py?answer=185833 bk8sm8525341pad.28 - gsmtp) 

אז זה סביר כי Gmail לא מטפל ssmtp כמו יישום מאובטח. כדי להיפטר משגיאה זו, עליך לשנות הגדרה מסוימת בחשבון Gmail שלך - לקבלת מידע נוסף על אופן הפעולה ועל הסיכונים הפוטנציאליים שלה, עיין בדף התמיכה של Google.

כאשר אני להורג את הפקודה הנ"ל, קיבלתי את הדוא"ל הבא:

סיכום

עם זאת, דנו בסך הכל 5 כלי שורת הפקודה, כי אתה יכול להשתמש כדי לשלוח דוא"ל משורת הפקודה לינוקס. נקודה חשובה שראוי להזכיר כאן היא כי מלבד השימוש בפקודות אלה כדי לשלוח הודעות דוא"ל באופן ידני משורת הפקודה, אתה יכול גם להשתמש בהם כדי ליצור הודעות דוא"ל מ סקריפטים.

האם אי פעם השתמשת בכל הכלים האלה? איך היתה החוויה שלך? שתף את המחשבות שלך בהערות הבאות.