मैं मुझे सामान भेजने के लिए Sendmail का उपयोग करना चाहता हूं और इसे एक ऑन्लाइनर में करना चाहता हूं।
echo "mail content" | sendmail emailataddres.com
इसे बिना विषय के भेजता है।
विषय पंक्ति मेल सामग्री से पहले आनी चाहिए, इसलिए मैं कुछ लाइनों की तलाश में हूँ:
echo "mail content" | prepend "Subject: All that matters" | sendmail emailataddres.com
sed और awk वास्तव में उपयोग करने और याद रखने के लिए अजीब होते हैं।
संपादित करें : केवल स्पष्ट करने के लिए: "मेल सामग्री" प्रतिध्वनि एक उदाहरण मात्र है। मुझे किसी भी स्रोत से धाराएं निकालने के लिए सामान तैयार करने में सक्षम होना चाहिए। जैसे: ifconfig, zcat, आदि।
prepend
? यह जानने के लिए कि किसी चीज़ को कैसे प्रस्तुत करना है, आपको ईओएफ को echo
भेजने के लिए अपस्ट्रीम कमांड (जैसे ) तक इंतजार करना होगा , ताकि आप उसे भेजने से पहले अपने डेटा को स्ट्रीम में पास कर सकें, ताकि उसे भेजने के लिए पाइप किया जा सके। एक छोटे से रूबी या पायथन स्क्रिप्ट के लिए एक कार्य की तरह लगता है।
mail
बजाय कमांड (जिसे कभी-कभी bsdmail कहा जाता है) का उपयोग करना होगा sendmail
। mail
एक वैकल्पिक -s subject
विकल्प लेता है , जैसे: ifconfig -a | mail -s 'Current ifconfig output' me@someaddr.com
echo -e "Subject: All that matters\nmail content"
? या अधिक मंच अज्ञेयprintf 'Subject: %s\n%s\n' "All that matters" "mail content"
:। आप एक छोटी सी स्क्रिप्ट भी लिख सकते हैं जो सिर्फ एक को सरल बनाने के लिए दो स्ट्रिंग तर्क लेती है।