コマンドラインでメール閲覧や送信を行う
[履歴] (2015/05/26 09:57:10)
ここは
趣味のプログラミングを楽しむための情報共有サービス。記事の一部は有料設定にして公開できます。 詳しくはこちらをクリック📝
最近の投稿
注目の記事

簡易メール閲覧ツール (mail)

システムメッセージがメール形式でユーザに通知されることがあります。そのような場合は簡易閲覧ツールとして mail コマンドを使用します。

$ mail
Heirloom Mail version 12.4 7/29/08.  Type ? for help.
"/var/spool/mail/username": 11 messages
>   1 Cron Daemon   Fri Oct 24 01:40  23/835   "Cron <username@localhost> root /usr/lib/sa/sa1 1 1"
    2 Cron Daemon   Fri Oct 24 01:50  23/835   "Cron <username@localhost> root /usr/lib/sa/sa1 1 1"
    3 Cron Daemon   Sat Oct 25 00:10  23/835   "Cron <username@localhost> root /usr/lib/sa/sa1 1 1"
    4 Cron Daemon   Sat Oct 25 00:30  23/835   "Cron <username@localhost> root /usr/lib/sa/sa1 1 1"
    5 Cron Daemon   Sat Oct 25 00:40  23/835   "Cron <username@localhost> root /usr/lib/sa/sa1 1 1"
    6 Cron Daemon   Sat Oct 25 00:50  23/835   "Cron <username@localhost> root /usr/lib/sa/sa1 1 1"
    7 Cron Daemon   Sat Oct 25 01:00  23/835   "Cron <username@localhost> root /usr/lib/sa/sa1 1 1"
    8 Cron Daemon   Sat Oct 25 01:10  23/835   "Cron <username@localhost> root /usr/lib/sa/sa1 1 1"
    9 Cron Daemon   Sat Oct 25 01:20  23/835   "Cron <username@localhost> root /usr/lib/sa/sa1 1 1"
   10 Cron Daemon   Sat Oct 25 01:30  23/835   "Cron <username@localhost> root /usr/lib/sa/sa1 1 1"
   11 Cron Daemon   Sat Oct 25 01:40  23/835   "Cron <username@localhost> root /usr/lib/sa/sa1 1 1"
&

閲覧したいメールの番号を指定してエンターキーを押します。長いメールの場合はスペースキーでスクロールします。

& 10

再びメール一覧を表示するためには 'h' を入力してエンターキーを押します。

& h

状態を保存して終了するためには 'q' を指定します。

& q

状態を保存しないで終了するためには 'x' を指定します。

& x

テストメール送信 (mail/sendmail/telnet)

postfix の不具合調査などを目的としてテストメールを送信したいことがあります。以下に三つの送信手段を示します。いずれの場合でも送信後はログが正常であるかを確認します。

$ sudo tail /var/log/maillog

mail コマンド

$ echo "This is a test." | /bin/mail -s "Test Mail" to_address@gmail.com

sendmail コマンド

$ sendmail -f from_address@example.com to_address@gmail.com
From: from_address@example.com
To: to_address@gmail.com
Subject: Test Mail

This is a test.
.

telnet コマンド

$ telnet localhost 25
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 hostname.example.com ESMTP Postfix
HELO hostname
250 hostname.example.com
MAIL From: from_address@example.com
250 2.1.0 Ok
RCPT To: to_address@gmail.com
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
From: from_address@example.com
To: to_address@gmail.com
Subject: Test Mail
This is a test.
.
250 2.0.0 Ok: queued as 8166B81020
quit
221 2.0.0 Bye
Connection closed by foreign host
関連ページ
    概要 外部の SMTP サーバを直接指定して利用するスクリプト Rubyでメール作成および送信を行うためのサンプルプログラム メール送信の方法 (Rails4/ActionMailer) の場合は気になりませんが、無指定の場合や mail コマンドなどは、ローカルホストの SMTP サービスを利用しようとします。そのような場合のために、SMTP サービスの Postfix デーモンをロー