Cronjob:帶有來自 mailutils 的 Cronjob 輸出的電子郵件為空
我正在調整我的 cronjobs 以更改 cronjob 發送的電子郵件的發件人和主題。為了發送電子郵件,我在 Ubuntu 14.04 上安裝了 mailutils 包。
這就是我從 cronjob 發送電子郵件的方式:
0 3 * * * /root/bin/backup.sh 2>&1 | mail -s "Slave1 Backup" -a "From:Slave1<slave3@example.com>" cronjob@example.com
來源:如何更改來自 Cron 的電子郵件的“發件人:”欄位?
但是,這給我發送了一封空電子郵件。備份腳本執行是因為我可以看到所有文件都是最新的,但是電子郵件不包含文本。
如果我把它改回這個,電子郵件將包含我想要的備份腳本的所有輸出:
MAILTO: cronjob@example.com 0 3 * * * /root/bin/backup.sh
我必須更改什麼才能使 mailutils 發送 cronjob 的輸出?
這似乎是我的郵件客戶端的問題,而不是 cronjob 本身的問題。我注意到當您收到一封打開 Thunderbird 的電子郵件時,Thunderbird 會在彈出的預覽通知中正確顯示電子郵件文本。
然而,當點擊 Thunderbird 內部的電子郵件時,它是空的並且不包含任何文本。所以我認為它可能與空的 HTML 內容有關。我可以通過將 mailutils 中的 headers 參數更改為來解決此問題
-a "Content-type: text/html;From:Slave3<slave3@spiele-palast.de>"
Cronjob 看起來不錯,我只是更改了郵件實用程序中一個參數的位置,它開始發送帶有腳本輸出的電子郵件。
0 3 * * * /root/bin/backup.sh 2>&1 | mail -s "Slave1 Backup" cronjob@example.com -a "From:Slave1<slave3@example.com>"