コンソールから電子メールを送信する標準的な移植可能な方法は何ですか?

コンソールから電子メールを送信する標準的な移植可能な方法は何ですか?

Linux(およびUnix)のコンソールまたはスクリプトから電子メールを送信する最も移植可能または標準的な方法は何ですか?

答え1

これには、次のものを使用できます。mailx注文する。使用例は次のとおりです。

mailx -v -s "Subject" -S smtp-use-starttls -S ssl-verify=ignore -S smtp-auth=login -S smtp=smtp://<server_name>:25 -S from="[email protected]" -S smtp-auth-user=<username> \
-S smtp-auth-password=<password> [email protected]

この例では、SSLおよびSMTP認証を使用します。

答え2

標準移植性が必要な場合は、以下を使用してください。mailx。コマンドは一般的ですが標準ではなく、mailさまざまなUNIXシステム(同じLinuxディストリビューションのインストール間を含む)でMail非常に異なるオプションを持つことができます。mailxたとえば、カスタムヘッダーが必要な場合は、いくつかのオプションのみが標準化されています。

sendmailこれはUNIXメールシステムが設定されている場合にのみ機能します(ローカルまたはリモートMTAと通信するには少なくとも1つのコマンドを設定する必要があります)。通常、これは有能な管理者がいるサーバーで発生すると想定できます。デスクトップコンピュータでは、電子メールは通常、各電子メールクライアントのユーザーによって構成されます。

答え3

コンピュータのsendmail設定が正しいと仮定すると、単に次のものを使用できます。

mailx -s Subject [email protected] < myemail.txt

他の答えよりも移植性が良く、少なくなります。まず、マシンにsendmailを設定する必要があります。一方、もしそうならはい構成を実行すると、一部のランダム設定の代わりに正しい設定が使用されます。

編集する:mail~になる基準mailx

関連情報