मैं यूनिक्स mailx
कमांड के माध्यम से ईमेल कैसे भेज सकता हूं ?
मैं यूनिक्स mailx
कमांड के माध्यम से ईमेल कैसे भेज सकता हूं ?
जवाबों:
एक उदाहरण
$ echo "something" | mailx -s "subject" recipient@somewhere.com
अनुलग्नक भेजने के लिए
$ uuencode file file | mailx -s "subject" recipient@somewhere.com
और अनुलग्नक भेजने और संदेश बॉडी लिखने के लिए
$ (echo "something\n" ; uuencode file file) | mailx -s "subject" recipient@somewhere.com
mail
।
uuencode
यह एक विरासत प्रौद्योगिकी है जो एक बीगोन मिलेनियम से उत्पन्न होती है जो कि "अनुलग्नक" से हमारा मतलब नहीं है। यह मूल रूप से संदेश पाठ के अंत में एक मशीन-पठनीय टुकड़ा रद्दी का काम करता है। इस दिन और उम्र में, आपको एक उचित MIME- जागरूक मेलर द्वारा बेहतर सेवा दी जाएगी। दुर्भाग्य से, mailx
MIME सुविधाओं के साथ कोई सार्वभौमिक रूप से समर्थित प्रतिस्थापन नहीं है, लेकिन यदि आपके पास है mutt
, तो संभवतः कम से कम प्रतिरोध का मार्ग है।
आप यहाँ हैं :
echo "Body" | mailx -r "FROM_EMAIL" -s "SUBJECT" "To_EMAIL"
पुनश्च। शरीर और विषय को दोहरे उद्धरण चिह्नों के भीतर रखा जाना चाहिए। से बोलियां निकालें FROM_EMAIL
और To_EMAIL
जबकि ई-मेल पते प्रतिस्थापन।
mailx -s "subjec_of_mail" abc@domail.com < file_name
के माध्यम से mailx
उपयोगिता हम से एक फ़ाइल भेज सकते हैं unix
करने के लिए mail server
। यहाँ उपरोक्त कोड में हम देख सकते हैं पहला पैरामीटर -s "subject of mail"
दूसरा पैरामीटर है mail ID
और अंतिम पैरामीटर फ़ाइल का नाम है जिसे हम संलग्न करना चाहते हैं
mail [-s subject] [-c ccaddress] [-b bccaddress] toaddress
-c और -b वैकल्पिक हैं।
-s: विषय निर्दिष्ट करें; यदि विषय में रिक्त स्थान है, तो उद्धरणों का उपयोग करें।
-c: कॉमा द्वारा अलग किए गए उपयोगकर्ताओं की सूची में कार्बन प्रतियां भेजें।
-b: कॉमा द्वारा अलग किए गए उपयोगकर्ताओं की सूची में नेत्रहीन कार्बन प्रतियां भेजें।
आशा है कि मेरा उत्तर आपके संदेह को स्पष्ट करता है।
MUTT कमांड के साथ इसका तेज
echo "Body Of the Email" | mutt -a "File_Attachment.csv" -s "Daily Report for $(date)" -c cc_mail@g.com to_mail@g.com -y
मैन पेज से:
मेल भेजना
एक या एक से अधिक लोगों को संदेश भेजने के लिए, mailx को उन तर्कों के साथ मंगाया जा सकता है जो उन लोगों के नाम हैं जिन्हें मेल भेजा जाएगा। उपयोगकर्ता को उसके संदेश में टाइप करने की उम्मीद की जाती है, उसके बाद एक लाइन की शुरुआत में एक 'कंट्रोल-डी' होता है।
दूसरे शब्दों में, mailx मानक इनपुट से भेजने के लिए सामग्री पढ़ता है और सामान्य की तरह पुनर्निर्देशित किया जा सकता है। उदाहरण के लिए:
ls -l $HOME | mailx -s "The content of my home directory" someone@email.adr
echo "Sending emails ..."
NOW=$(date +"%F %H:%M")
echo $NOW " Running service" >> open_files.log
header=`echo "Service Restarting: " $NOW`
mail -s "$header" abc.xyz@google.com, \
cde.mno@yahoo.com, \ < open_files.log
पते से अनुरूपण
MESSAGE="SOME MESSAGE"
SUBJECT="SOME SUBJECT"
TOADDR="u@u.com"
FROM="DONOTREPLY"
echo $MESSAGE | mail -s "$SUBJECT" $TOADDR -- -f $FROM
mail
और mailx
कमांड हैं।
कई अनुलग्नकों के साथ मेल भेजने से निपटने के लिए यहां एक बहुक्रियाशील कार्य है:
enviaremail() {
values=$(echo "$@" | tr -d '\n')
listargs=()
listargs+=($values)
heirloom-mailx $( attachment=""
for (( a = 5; a < ${#listargs[@]}; a++ )); do
attachment=$(echo "-a ${listargs[a]} ")
echo "${attachment}"
done) -v -s "${titulo}" \
-S smtp-use-starttls \
-S ssl-verify=ignore \
-S smtp-auth=login \
-S smtp=smtp://$1 \
-S from="${2}" \
-S smtp-auth-user=$3 \
-S smtp-auth-password=$4 \
-S ssl-verify=ignore \
$5 < ${cuerpo}
}
फ़ंक्शन कॉल: enviaremail "smtp.mailserver: port" "from_address" "ऑक्टूसर" "" पास "" गंतव्य "" स्थान द्वारा अलग किए गए अनुलग्नकों की सूची "
नोट: कॉल में दोहरे उद्धरण चिह्नों को हटा दें
इसके अलावा समारोह का उपयोग करने से पहले ईमेल के बाहरी टिटुलो (विषय) और $ cuerpo (शरीर) को परिभाषित करने के लिए कृपया याद रखें
यदि आप दो से अधिक व्यक्ति या DL भेजना चाहते हैं:
echo "Message Body" | mailx -s "Message Title" -r sender@someone.com receiver1@someone.com,receiver_dl@.com
यहाँ: