
printf からの出力をメールにパイプすると、電子メールは送信されません。出力をファイルに書き込んで、ファイルから入力をリダイレクトすると、動作します。
たとえば、次のような bash スクリプトがあります。
printf "\nsending email.\n" | /usr/bin/mail -s "email test 1" [email protected]
printf "\nsending email\n" > /tmp/email-test
/usr/bin/mail -s "email test 2" [email protected] < /tmp/email-test
電子メール テスト 2 は配信されますが、電子メール テスト 1 は配信されません。
症状は断続的です。両方のメールが送信されないこともあります。パイプのあるメールが失敗することもあります。
どちらか一方が送信されるか両方が送信されるかに関係なく、両方のログ ラインは次のようになります。
Nov 17 07:39:10 boxtop3 postfix/smtp[12749]: 9A7032C23C5: to=<[email protected]>, orig_to=<[email protected]>, relay=smtp.gmail.com[64.233.177.109]:587, delay=1.7, delays=0.04/0/1.1/0.58, dsn=2.0.0, status=sent (250 2.0.0 OK 1573994350 z127sm6991417ywb.38 - gsmtp)
Nov 17 07:39:10 myserver postfix/qmgr[12702]: 9A7032C23C5: removed
私のメールは、mydomain.com と mydomain.org の両方で GMail によってホストされています。GMail が私のメールの一部を断続的に破棄しているようです。なぜでしょうか?
使用方法:
- GNU bash、バージョン4.4.20(1)リリース
- ポストフィックス 3.3.0-1ubuntu0.2
- メール (GNU Mailutils) 3.4