Tam bir posta iletisini (başlık ve gövde) sendmail'a göndererek bir kabuğun içinden kolayca bir e-posta gönderebilirsiniz. Bu, bunu yaptığınız ana bilgisayarın e-posta iletilerini göndermek için bir posta aktarım aracısıyla (örneğin, sendmail veya posta kodu) düzgün bir şekilde yapılandırıldığını varsayar.
Eki olan e-posta göndermek için en kolay yolu posta kullanıcı aracısı (örn Thunderbird) 'de basit bir şablon mesajı oluşturmak için, ve görünüm kaynağı komutuyla bir şablon olarak içeriğini kopyalamak. Bu şablonu ihtiyaçlarınıza uyacak şekilde değiştirin ve kabuk komut dosyasına yerleştirin.
#!/bin/sh
cat <<\EOF |
To: Ramesh <[email protected]>
From: Diomidis Spinellis <[email protected]>
Subject: Here are your Hadoop results
Message-ID: <[email protected]>
Date: Sun, 3 Apr 2016 09:58:48 +0300
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------030303090406090809090501"
This is a multi-part message in MIME format.
--------------030303090406090809090501
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
The attachment contains your Hadoop results.
--------------030303090406090809090501
Content-Type: application/octet-stream;
name="data"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="data"
HviDNR105+2Tr0+0fsx3OyzNueQqPuAXl9IUrafOi7Y=
--------------030303090406090809090501--
EOF
sendmail [email protected]
, gerçek verilerle sabit mesajı yapılandırmak bunları üretmek komutlarla değiştirmek istediğiniz parçaları değiştirmek için: Burada
bir örnektir. ,
#!/bin/sh
cat <<EOF |
To: Ramesh <[email protected]>
From: Diomidis Spinellis <[email protected]>
Subject: Here are your Hadoop results
Message-ID: <[email protected]>
Date: $(date -R)
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="------------030303090406090809090501"
This is a multi-part message in MIME format.
--------------030303090406090809090501
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
The attachment contains your Hadoop results.
--------------030303090406090809090501
Content-Type: application/octet-stream;
name="data"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="data"
$(base64 binary-data-file.dat)
--------------030303090406090809090501--
EOF
sendmail [email protected]
sayesinde Diomidis (burada
EOF
işaretleyici belgelemek dan. Eksik ters eğik çizgi Not) onun yerel modda iyi çalışıyor. Şimdi Oozie kabuk eyleminde test etmek istiyorum. "Exmaple.csv" adlı bir dosyam varsa –. Bu ismi her iki isim = "exmaple.csv" ve filename = "exmaple.csv" olarak yerleştirmem gerekiyor. ya da "veri" ne yazmalıyım. Ve bir xlsx dosyası göndermeye çalışıyorum, İçerik Türü ve diğer parametreleri nasıl değiştirmeliyim. Bu konuda daha fazla bilgi içeren bir bağlantıyı veya benzer şeyi paylaşırsanız gerçekten çok memnun olurum. Teşekkürler –
Kendinize e-posta istemciniz aracılığıyla bir ek göndermenizi ve ileti kaynak koduna bakmanızı öneririm. –