Email-Server

禁止空白電子郵件

  • March 10, 2020

如何抑制空白電子郵件?例如,在下面的例子中,我想

some command | mail -s "tables altered on `hostname`" me@company.com

我在發送消息“之後”收到以下消息:

Null message body; hope that's ok

這不行。如果沒有文本,我不想發送郵件。

#!/bin/sh  

string=`some command`
len=${#string} 
if [ "$len" -gt "0" ]
  then echo $string | mail -s "tables altered on `hostname`" me@company.com
fi  

僅當命令的輸出長度至少為 1 個字元時才會發送郵件,但這可能包括空格等。

(上面的解決方案有效,但沒有必要。man mail顯示 -E 選項):

some command | mail -E -s "tables altered on `hostname`" me@company.com

我使用以下內容:

$ mail --exec 'set nonullbody' -s Test test@example.com

我在GNU 郵件文件nullbody部分下找到了它。

引用自:https://serverfault.com/questions/244173