Computer >> कंप्यूटर ट्यूटोरियल >  >> स्मार्टफोन्स >> Linux

Linux कमांड लाइन से ईमेल कैसे भेजें

यह गाइड आपको दिखाएगी कि Linux कमांड लाइन और शेल स्क्रिप्ट के माध्यम से ईमेल कैसे भेजें, साथ ही उन ईमेल में अटैचमेंट कैसे जोड़ें।

Linux कमांड लाइन बहुत शक्तिशाली हो सकती है एक बार जब आप जानते हैं कि इसका उपयोग कैसे करना है। आप डेटा पार्स कर सकते हैं, प्रोसेस मॉनिटर कर सकते हैं, बैकअप ऑटोमेट कर सकते हैं और इसका उपयोग करके बहुत सी अन्य उपयोगी और अच्छी चीजें कर सकते हैं। अक्सर एक रिपोर्ट जनरेट करके उसे मेल करने की आवश्यकता होती है। यह दिन के बैकअप के ठीक से होने या न होने की सूचना जितना सरल हो सकता है। मैं आपको Linux कमांड लाइन और शेल स्क्रिप्ट में मेल भेजने के साथ शुरुआत करने में मदद करूंगा। हम कमांड लाइन से अटैचमेंट भेजने को भी कवर करेंगे। हम "mail" कमांड से शुरू करेंगे।

Mail कमांड

यह जांचने के लिए एक त्वरित टेस्ट चलाएं कि "sendmail" एप्लिकेशन इंस्टॉल है और सही ढंग से काम कर रहा है। निम्न कमांड निष्पादित करें, "you@youremailid.com" को अपने ईमेल पते से बदलें।

# mail -s "Hello world" you@youremailid.com

रिटर्न कुंजी दबाएं और आप एक नई लाइन पर आएंगे। टेक्स्ट "This is a test from my server" दर्ज करें। टेक्स्ट के बाद फिर से रिटर्न कुंजी दबाएं। फिर Control+D कुंजी संयोजन दबाकर जारी रखें। कमांड प्रॉम्प्ट आपसे पूछेगा कि क्या आप किसी अन्य पते पर मेल की एक कॉपी मार्क करना चाहते हैं, फिर से Control+D दबाएं। अपना मेलबॉक्स जांचें। यह कमांड उल्लिखित ईमेल आईडी पर "Hello world" विषय के साथ एक मेल भेज देगा।

कमांड चलाते समय मेल के बॉडी में कंटेंट जोड़ने के लिए आप निम्न विकल्पों का उपयोग कर सकते हैं। यदि आप अपना टेक्स्ट जोड़ना चाहते हैं:

# echo "This will go into the body of the mail." | mail -s "Hello world" you@youremailid.com

और यदि आप चाहते हैं कि मेल फ़ाइल से कंटेंट पढ़े:

# mail -s "Hello world" you@youremailid.com < /home/calvin/application.log

Mail कमांड में कुछ अन्य उपयोगी विकल्प हैं:

-s subject (मेल का विषय)
-c email-address (इस "email-address" पर कॉपी मार्क करें, या CC)
-b email-address (इस "email-address" पर ब्लाइंड कार्बन कॉपी मार्क करें, या BCC)

यहां बताया गया है कि आप इन विकल्पों का उपयोग कैसे कर सकते हैं:

# echo "Welcome to the world of Calvin n Hobbes" | mail -s "Hello world" calvin@cnh.com -c hobbes@cnh.com -b susie.derkins@cnh.com

ईमेल अटैचमेंट के लिए MUTT का उपयोग

Mail कमांड का उपयोग करने की एक प्रमुख कमी यह है कि यह अटैचमेंट भेजने का समर्थन नहीं करता। दूसरी ओर, mutt इसका समर्थन करता है। मैंने इस सुविधा को विशेष रूप से उन स्क्रिप्ट के लिए उपयोगी पाया है जो गैर-पाठ्य रिपोर्ट या बैकअप जनरेट करती हैं जो आकार में अपेक्षाकृत छोटे हैं जिन्हें मैं कहीं और बैकअप करना चाहता हूं। बेशक, mutt आपको केवल अटैचमेंट भेजने से कहीं अधिक करने की अनुमति देता है। यह "mail" कमांड की तुलना में बहुत अधिक पूर्ण कमांड लाइन मेल क्लाइंट है। अभी हम केवल बुनियादी चीजों का पता लगाएंगे जिनकी हमें अक्सर आवश्यकता हो सकती है। यहां बताया गया है कि आप फ़ाइल को मेल में कैसे अटैच करेंगे:

# echo "Sending an attachment." | mutt -a backup.zip -s "attachment" calvin@cnh.com

यह कमांड calvin@cnh.com पर "attachment" विषय (-s) के साथ, बॉडी टेक्स्ट "Sending an attachment.", अटैचमेंट (-a) backup.zip वाला मेल भेजेगा। Mail कमांड की तरह आप किसी अन्य मेल आईडी पर कॉपी मार्क करने के लिए "-c" विकल्प का उपयोग कर सकते हैं।

शेल स्क्रिप्ट से ईमेल भेजना

अब, बुनियादी बातें कवर होने के साथ आप अपने शेल स्क्रिप्ट से मेल भेज सकते हैं। यहां एक सरल शेल स्क्रिप्ट है जो आपके पार्टीशन पर स्पेस के उपयोग की रीडिंग देती है और डेटा को आपको मेल करती है।

#!/bin/bash
df -h | mail -s "disk space report" calvin@cnh.com

इन लाइनों को अपने Linux सर्वर पर एक फ़ाइल में सेव करें और इसे चलाएं। आपको कमांड के परिणामों वाला मेल प्राप्त होना चाहिए। यदि, हालांकि, आपको इससे अधिक डेटा भेजने की आवश्यकता है तो आपको डेटा को टेक्स्ट फ़ाइल में लिखना होगा और मेल बनाते समय उसे मेल बॉडी में दर्ज करना होगा। यहां एक शेल स्क्रिप्ट का उदाहरण है जो डिस्क उपयोग के साथ-साथ मेमोरी उपयोग प्राप्त करती है, डेटा को अस्थायी फ़ाइल में लिखती है, और फिर इसे भेजे जा रहे मेल की बॉडी में दर्ज करती है:

#!/bin/bash
df -h > /tmp/mail_report.log
free -m >> /tmp/mail_report.log
mail -s "disk and RAM report" calvin@cnh.com < /tmp/mail_report.log

अब यहां एक अधिक जटिल समस्या है। आपको कुछ फ़ाइलों का बैकअप लेना है और उन्हें मेल करना है। पहले मेल की जाने वाली डायरेक्टरी को आर्काइव किया जाता है। फिर इसे mutt का उपयोग करके ईमेल अटैचमेंट के रूप में भेजा जाता है। ऐसा करने के लिए यहां एक स्क्रिप्ट है:

#!/bin/bash
tar -zcf /tmp/backup.tar.gz /home/calvin/files
echo | mutt -a /tmp/backup.tar.gz -s "daily backup of data" calvin@cnh.com

अंतिम लाइन की शुरुआत में echo मेल की बॉडी में एक ब्लैंक जोड़ता है जिसे भेजा जा रहा है।

यह आपको Linux कमांड लाइन और शेल स्क्रिप्ट से मेल भेजने के साथ शुरुआत करने के लिए पर्याप्त होना चाहिए। दोनों mail और mutt के लिए अधिक विकल्पों के लिए "मैन पेज" पढ़ें (प्रत्येक पर पूर्ण मैनुअल के लिए "man mail" और "man mutt" कमांड दर्ज करें)। फिर मेल कमांड के साथ आप क्या कर सकते हैं, जैसे अपने आप को ऑटोमेटेड रिपोर्ट भेजना, के लिए अपनी कल्पना का उपयोग करें।

  1. लिनक्स में tee कमांड का उपयोग कैसे करें लिनक्स में tee कमांड का उपयोग कैसे करें

    यदि आप कभी अपने लिनक्स शेल के तहत पाइप और रीडायरेक्शन का उपयोग करते हैं, तो संभावना है कि आपको कभी-कभी tee यूटिलिटी का उपयोग करने की भी आवश्यकता होगी। tee क्या करता है? ls जैसी कमांड आपके वर्तमान डायरेक्टरी की सामग्री प्रदर्शित करेगी। दूसरे शब्दों में, यह इन सामग्री को stdout (स्टैंडर्ड आउटपुट) पर प

  1. कमांड लाइन से उबंटू को अपग्रेड कैसे करें कमांड लाइन से उबंटू को अपग्रेड कैसे करें

    उबंटू का अपडेट मैनेजर आपके इंस्टॉलेशन को एक नए प्रमुख रिलीज में अपग्रेड करना अपेक्षाकृत आसान बनाता है। उपयोगिता का ग्राफिकल इंटरफेस आपको एक चरण-दर-चरण विज़ार्ड के माध्यम से मार्गदर्शन करता है जिसका पालन करना आसान होना चाहिए। लेकिन ऐसे समय होते हैं जब आप ग्राफिकल उपयोगिता का उपयोग नहीं कर सकते - उदा

  1. आउटलुक में ईमेल को एलियास के रूप में भेजें: चरण-दर-चरण गाइड आउटलुक में ईमेल को एलियास के रूप में भेजें: चरण-दर-चरण गाइड

    इस गाइड में आउटलुक को ऑफिस 365 में बने ईमेल एलियास से भेजने के लिए सेटअप करने के निर्देश हैं। जैसा कि आप पहले से जानते हैं, जब आप ईमेल एलियास पर प्राप्त संदेश का उत्तर देते हैं, तो From फील्ड में आपका प्राथमिक ईमेल पता होता है न कि एलियास पता। यदि आप ईमेल एलियास से Send As करना चाहते हैं, तो इस लेख