mail コマンドでメールを送る

リナックスにはmailコマンドというのがあります。サーバー上で直接メールの送受信を行なうコマンドです。

mail コマンド

【書式】

mail [-s 題名] [宛先]

このコマンドを実行すると、本文、CCを順に入力するようになります。
本文を入力し終わったら「.」ドットで終了させます。

【例】

[dacelo@info]$ mail -s テストメール dacelo@example.com
本文です。
.
Cc: copy@example.com(空白でも可)

オプション&Tips

ただ、これだと本当にテストでメールを送るくらいしか使えないので、いくつかネタを。

まず、日本語のメールを送ろうとすると、大抵文字化けしちゃうんですよね。
これを回避するには、あらかじめテキストファイルを作っておいて、nkfでそれを読み出して、パイプでmailコマンドに渡す、という方法があります。

[dacelo@info]$ nkf -j mailtest | mail -s 日本語のテストメール。 dacelo@example.com

まあちょっと二度手間で面倒くさいんですが。

広告

メールのFromを指定

普通に送ると、
dacelo@localdomain
などのユーザー名&サーバーホスト名でのメールが送られます。ここに返信されても困りますし、メールのFromを指定しましょう。
メールコマンドのオプションで-r を使うと、送信元メールアドレス(Return-pathのrかな)を指定できます。

他には、 -c オプションでCCが設定できます。複数の宛先をCCにしたい場合は、-c を増やしていけばOK。

すべてのオプション指定の後に、宛先メールアドレスを入れます。宛先が複数の場合は、スペースであけて追加していけばOK

[dacelo@info]$ mail -s “タイトル” -r testfrom@test.test -c cc1@example.com -c cc2@example.com to1@example.com to2@example.com

これで、testfrom@test.testからのメールとして届きます。

About: dacelo


3 thoughts on “mail コマンドでメールを送る”

Leave a Reply

Your email address will not be published. Required fields are marked *