サイトアイコン IT NEWS

【Linux】シェルスクリプトからsendmailでメールを送信する方法

linux-sendmail

バックグラウンドで処理を実行している場合、正常に処理が終了したのか確認したい場合があります。
モニターに表示するのも1つの手ではありますが、活動時間外やその場にいない時は、メールで送信してくれるととても便利ですよね。
そこで今回は、Linuxメール送信をする簡単なシェルスクリプトをご紹介します。

sendmailでメール送信

まず前提としてメールが送信できるサーバであること。
ここではsendmailコマンドを利用します。

メール内容を作成

送信したいメールの内容をテキストファイルで作成します。

vi mail.txt

ファイル名は任意です。
内容は以下の形式に従って作成します。

From: <[送信元]>
To: <[宛先]>
Subject: [件名][本文]

From:To:の<>内にそれぞれ送信元と宛先のメールアドレスを。
それから、Subjectメールのタイトル、一行空白の改行を入れて本文を記載します。

メールを送信

あとは、sendmailコマンドを実行する際に、先程作成したテキストを指定してあげればOKです。

cat mail.txt | sendmail -i -t

itオプションが気になる方はググってください。

文字コードや日本語対応

今回はこちらの記事を参考にしました。

文字コードを指定して日本語メールを送信しても文字化けしないように対策できるようなので、皆さんもぜひ試してみてください。

モバイルバージョンを終了