यह मार्गदर्शिका आपको बताएगी कि लिनक्स कमांड लाइन से और शेल स्क्रिप्ट के माध्यम से ईमेल कैसे भेजें, साथ ही उन ईमेल में अटैचमेंट कैसे जोड़ें।
एक बार जब आप इसका उपयोग करना जानते हैं तो लिनक्स कमांड लाइन बहुत शक्तिशाली हो सकती है। आप डेटा को पार्स कर सकते हैं, प्रक्रियाओं की निगरानी कर सकते हैं, बैकअप को स्वचालित कर सकते हैं और इसका उपयोग करके कई अन्य उपयोगी और अच्छी चीजें कर सकते हैं। अक्सर एक रिपोर्ट तैयार करने और उसे मेल करने की आवश्यकता होती है। यह एक अधिसूचना के रूप में सरल आवश्यकता हो सकती है कि दिन का बैकअप ठीक से चला गया, या नहीं। मैं Linux कमांड लाइन और . से मेल भेजने के साथ आरंभ करने में आपकी सहायता करूंगा शेल स्क्रिप्ट में। हम कमांड लाइन से अटैचमेंट भेजने को भी कवर करेंगे। हम "मेल" कमांड से शुरुआत करेंगे।
मेल कमांड
पहले यह सुनिश्चित करने के लिए एक त्वरित परीक्षण चलाएँ कि "sendmail" एप्लिकेशन स्थापित है और ठीक से काम कर रहा है। अपने ई-मेल पते के साथ "[email protected]" को प्रतिस्थापित करते हुए, निम्न आदेश निष्पादित करें।
# मेल-एस "हैलो वर्ल्ड" [email protected]
रिटर्न की दबाएं और आप एक नई लाइन पर आ जाएंगे। पाठ दर्ज करें "यह मेरे सर्वर से एक परीक्षण है"। वापसी कुंजी को फिर से दबाकर पाठ का पालन करें। फिर Control+D . के कुंजी संयोजन को हिट करें जारी रखने के लिए। कमांड प्रॉम्प्ट आपसे पूछेगा कि क्या आप किसी अन्य पते पर मेल की एक प्रति को चिह्नित करना चाहते हैं, कंट्रोल+डी दबाएं। दोबारा। अपना मेलबॉक्स जांचें। यह कमांड "हैलो वर्ल्ड" विषय के साथ उल्लिखित ईमेल आईडी पर एक मेल भेजेगा।
कमांड चलाते समय मेल के मुख्य भाग में सामग्री जोड़ने के लिए आप निम्नलिखित विकल्पों का उपयोग कर सकते हैं। यदि आप स्वयं पाठ जोड़ना चाहते हैं:
# गूंज "यह मेल के मुख्य भाग में जाएगा।" | मेल-एस "हैलो वर्ल्ड" [email protected]
और यदि आप चाहते हैं कि मेल किसी फ़ाइल की सामग्री को पढ़े:
# मेल-एस "हैलो वर्ल्ड" [email protected]
मेल कमांड में कुछ अन्य उपयोगी विकल्प हैं:
-विषय (मेल का विषय)
-c ईमेल-पता (इस "ईमेल-पते" या सीसी पर एक प्रति चिह्नित करें)
-b ईमेल-पता (इस "ईमेल-पते" या बीसीसी पर एक अंधा कार्बन कॉपी चिह्नित करें)
यहां बताया गया है कि आप इन विकल्पों का उपयोग कैसे कर सकते हैं:
# गूंज "केल्विन एन हॉब्स की दुनिया में आपका स्वागत है" | मेल-एस "हैलो वर्ल्ड" [email protected] -c [email protected] -b [email protected]
ईमेल अटैचमेंट के लिए MUTT का उपयोग करना
मेल कमांड का उपयोग करने की एक बड़ी कमी यह है कि यह अटैचमेंट भेजने का समर्थन नहीं करता है। दूसरी ओर, म्यूट इसका समर्थन करता है। मुझे यह सुविधा विशेष रूप से उन लिपियों के लिए उपयोगी लगी है जो गैर-पाठ्य रिपोर्ट या बैकअप उत्पन्न करती हैं जो आकार में अपेक्षाकृत छोटे होते हैं जिनका मैं कहीं और बैकअप लेना चाहता हूं। बेशक, म्यूट आपको केवल अटैचमेंट भेजने के अलावा भी बहुत कुछ करने की अनुमति देता है। यह "मेल" कमांड की तुलना में बहुत अधिक पूर्ण कमांड लाइन मेल क्लाइंट है। अभी हम केवल उन बुनियादी चीजों का पता लगाएंगे जिनकी हमें अक्सर आवश्यकता हो सकती है। यहां बताया गया है कि आप किसी फ़ाइल को मेल में कैसे संलग्न करेंगे:
# गूंज "अनुलग्नक भेजा जा रहा है।" | mutt -a backup.zip -s "अटैचमेंट" [email protected]
यह आदेश [email protected] पर विषय (-s) "अटैचमेंट", बॉडी टेक्स्ट "एक अटैचमेंट भेजना" के साथ एक मेल भेजेगा, जिसमें अटैचमेंट (-a) backup.zip होगा। मेल कमांड की तरह आप किसी अन्य मेल आईडी पर कॉपी मार्क करने के लिए "-c" विकल्प का उपयोग कर सकते हैं।
शैल स्क्रिप्ट से ईमेल भेजना
अब, बुनियादी बातों के साथ आप अपनी शेल स्क्रिप्ट से मेल भेज सकते हैं। यहां एक सरल शेल स्क्रिप्ट दी गई है जो आपको आपके विभाजनों पर स्थान के उपयोग की रीडिंग देती है और आपको डेटा मेल करती है।
<ब्लॉकक्वॉट>
#!/bin/bash
df -h | मेल-एस "डिस्क स्पेस रिपोर्ट" [email protected]
इन पंक्तियों को अपने Linux सर्वर पर एक फ़ाइल में सहेजें और इसे चलाएँ। आपको एक मेल प्राप्त करना चाहिए जिसमें कमांड के परिणाम हों। यदि, हालांकि, आपको इससे अधिक डेटा भेजने की आवश्यकता है, तो आपको डेटा को टेक्स्ट फ़ाइल में लिखना होगा और मेल की रचना करते समय इसे मेल बॉडी में दर्ज करना होगा। यहां एक शेल स्क्रिप्ट का उदाहरण दिया गया है जो डिस्क उपयोग के साथ-साथ मेमोरी उपयोग को प्राप्त करता है, डेटा को एक अस्थायी फ़ाइल में लिखता है, और फिर इसे भेजे जाने वाले मेल के मुख्य भाग में दर्ज करता है:
<ब्लॉकक्वॉट>
#!/bin/bash
df -h> /tmp/mail_report.log
free -m>> /tmp/mail_report.log
mail -s "डिस्क और रैम रिपोर्ट" calvin@ cnh.com
अब यहाँ एक और जटिल समस्या है। आपको कुछ फाइलों का बैकअप लेना होगा और फिर मेल करना होगा। सबसे पहले मेल की जाने वाली निर्देशिका को संग्रहीत किया जाता है। फिर इसे mutt का उपयोग करके ईमेल अटैचमेंट के रूप में भेजा जाता है। ऐसा करने के लिए यहां एक स्क्रिप्ट है:
<ब्लॉकक्वॉट>
#!/bin/bash
tar -zcf /tmp/backup.tar.gz /home/calvin/files
इको | mutt -a /tmp/backup.tar.gz -s "डेटा का दैनिक बैकअप" [email protected]
अंतिम पंक्ति की शुरुआत में प्रतिध्वनि सेट किए जा रहे मेल के मुख्य भाग में एक रिक्त स्थान जोड़ती है।
यह आपको लिनक्स कमांड लाइन और शेल स्क्रिप्ट से मेल भेजने के साथ शुरू करना चाहिए। अधिक विकल्पों के लिए मेल और म्यूट दोनों के लिए "मैन पेज" पढ़ें (प्रत्येक पर पूर्ण मैनुअल के लिए "मैन मेल" और "मैन म्यूट" कमांड दर्ज करें)। फिर अपनी कल्पना का उपयोग इस बात के लिए करें कि आप मेल कमांड के साथ क्या कर सकते हैं, जैसे स्वयं को स्वचालित रिपोर्ट भेजना।