bash: メールへの printf は失敗、リダイレクトは成功

bash: メールへの printf は失敗、リダイレクトは成功

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

答え1

どちらの電子メール コマンドにも問題はないことがわかりました。/var/log/mail に示されているように、各コマンドは実行されるたびに確実にメッセージを送信しています。

私のメールは[メールアドレス]GMail によってホストされています。 [メールアドレス]すべてを転送するルールがある[メールアドレス]

紛失したメッセージはメールボックスに見つかりました[メールアドレス]配達されない[メールアドレス]何らかの理由で、GMail が一部のメッセージを転送または配信できません。転送/配信に失敗するメールは他にもあります。これらのメッセージは私が最初に気付いたものです。

関連情報