Gửi email nội dung Plaintext với một tệp đính kèm bản rõ với mailx:
(
/usr/bin/uuencode attachfile.txt myattachedfilename.txt;
/usr/bin/echo "Body of text"
) | mailx -s 'Subject' youremail@gmail.com
Dưới đây là lệnh tương tự như trên, không có dòng mới
( /usr/bin/uuencode /home/el/attachfile.txt myattachedfilename.txt; /usr/bin/echo "Body of text" ) | mailx -s 'Subject' youremail@gmail.com
Đảm bảo rằng bạn có một tệp /home/el/attachfile.txt
được xác định với nội dung này:
<html><body>
Government discriminates against programmers with cruel/unusual 35 year prison
sentences for making the world's information free, while bankers that pilfer
trillions in citizens assets through systematic inflation get the nod and
walk free among us.
</body></html>
Nếu bạn không có uuencode, hãy đọc nó: /unix/16277/how-do-i-get-uuencode-to-work
Trên Linux, Gửi email thân HTML với tệp đính kèm PDF bằng sendmail:
Hãy chắc chắn rằng bạn đã cài đặt ksh: yum info ksh
Hãy chắc chắn rằng bạn đã cài đặt sendmail và cấu hình.
Đảm bảo bạn đã cài đặt uuencode và có sẵn: /unix/16277/how-do-i-get-uuencode-to-work
Tạo một tệp mới được gọi test.sh
và đặt nó vào thư mục chính của bạn:/home/el
Đặt mã sau vào test.sh
:
#!/usr/bin/ksh
export MAILFROM="el@defiant.com"
export MAILTO="youremail@gmail.com"
export SUBJECT="Test PDF for Email"
export BODY="/home/el/email_body.htm"
export ATTACH="/home/el/pdf-test.pdf"
export MAILPART=`uuidgen` ## Generates Unique ID
export MAILPART_BODY=`uuidgen` ## Generates Unique ID
(
echo "From: $MAILFROM"
echo "To: $MAILTO"
echo "Subject: $SUBJECT"
echo "MIME-Version: 1.0"
echo "Content-Type: multipart/mixed; boundary=\"$MAILPART\""
echo ""
echo "--$MAILPART"
echo "Content-Type: multipart/alternative; boundary=\"$MAILPART_BODY\""
echo ""
echo "--$MAILPART_BODY"
echo "Content-Type: text/plain; charset=ISO-8859-1"
echo "You need to enable HTML option for email"
echo "--$MAILPART_BODY"
echo "Content-Type: text/html; charset=ISO-8859-1"
echo "Content-Disposition: inline"
cat $BODY
echo "--$MAILPART_BODY--"
echo "--$MAILPART"
echo 'Content-Type: application/pdf; name="'$(basename $ATTACH)'"'
echo "Content-Transfer-Encoding: uuencode"
echo 'Content-Disposition: attachment; filename="'$(basename $ATTACH)'"'
echo ""
uuencode $ATTACH $(basename $ATTACH)
echo "--$MAILPART--"
) | /usr/sbin/sendmail $MAILTO
Thay đổi các biến xuất trên đầu trang test.sh
để phản ánh địa chỉ và tên tệp của bạn.
Tải xuống một tài liệu pdf kiểm tra và đặt nó vào /home/el
được gọi là pdf-test.pdf
Tạo một tệp có tên /home/el/email_body.htm và đặt dòng này vào đó:
<html><body><b>this is some bold text</b></body></html>
Đảm bảo tệp pdf có đủ 755 quyền.
Chạy kịch bản ./test.sh
Kiểm tra hộp thư đến email của bạn, văn bản phải ở định dạng HTML và tệp pdf tự động được hiểu là tệp nhị phân. Cẩn thận không sử dụng chức năng này nhiều hơn 15 lần mỗi ngày, ngay cả khi bạn gửi email cho chính mình, các bộ lọc thư rác trong gmail có thể đưa vào danh sách đen một email phun mà không cho bạn tùy chọn để cho phép chúng thông qua. Và bạn sẽ thấy điều này không còn hoạt động nữa, hoặc nó chỉ cho phép thông qua tệp đính kèm hoặc email hoàn toàn không thông qua. Nếu bạn phải thực hiện nhiều thử nghiệm về vấn đề này, hãy trải đều chúng trong nhiều ngày hoặc bạn sẽ bị gắn mác là người gửi thư rác và chức năng này sẽ không hoạt động nữa.