シェルスクリプトマガジン

第6回 DMを自動送信する(SMTPS編)

 16行目のsedコマンドを使って、取り出した送信先のメールアドレスと氏名をテンプレートとして用意したメッセージにはめ込んでいます。10行目で、送信元のメールアドレスをはめこんだものを/tmp/tmp_message.txtファイルに保存しているので、それを使います。送信元のメールアドレス、送信先のメールアドレスと氏名をはめこんだメッセージを「/tmp/message.txt」ファイルに保存します。

 17行目で「curl」コマンドでメールを送信します。「-s」はメッセージを出力しないオプションです。「-k」は、「SSL/TLS」(Secure Sockets Layer/Transport Layer Security)での接続を試みるオプションです。「–url」オプションにはメールサーバーのURIを指定します。SMTPSのプロトコルを利用するので「smtps://ホスト名:ポート番号」という形式になります。STMPSの場合、一般的にポート番号が「465」になります。「–mail-rcpt」オプションには宛先のメールアドレスを、「–mail-from」オプションには送信元のメールアドレスを、「–user」オプションにはメールサーバーにログインできるユーザー名とパスワードを指定します。いずれもスクリプトの先頭で記述した変数を用いています。「–upload-file」オプションには、送信するメッセージを格納したファイル(/tmp/message.txt)を指定します。

 メールを送信し終えたら、20行目でテンプレートのメッセージにメールアドレスと氏名をはめこむために利用した二つのファイルを「rm」コマンドで削除しています。