Linuxコマンド

mailコマンドでメールの閲覧や送信を行う

更新日:

メールの一覧表示

「mbox形式」のメールを閲覧するには、引数なしでmailコマンドを実行します。
# mail
mailコマンドは、デフォルトでmbox形式で保存されているメールを閲覧しようとします。 mbox形式は/var/spool/mail/ユーザー名のファイルにメールを保存する形式です。 「Maildir形式」(ユーザーのホームディレクトのMaildirディレクトリにメールを保存する形式)を使用している場合は、次のようにmailコマンドを実行します。
$ mail -f ~/Maildir
コマンドを実行すると、メールボックスのメールの概要が一覧表示されます。
# mail
Heirloom Mail version 12.5 7/5/10.  Type ? for help.
"/var/spool/mail/root": 9 messages 9 new
>N  1 foo@example.com   Wed Nov 13 14:48  28/985   "test1"
N  2 foo@example.com   Sun Apr 18 22:15  28/921   "test2"
N  3 (Cron Daemon)     Sun Apr 25 03:07  25/870   "Cron
N  4 hoge@example.com  Thu Apr 29 11:55  18/564   "testmail"
&
カレントメッセージの先頭に「>」が付きます。用語カレントメッセージは、この後もよく出てくるので覚えておいてください。 最後の「&」はプロンプトで、コマンドの入力待ちであることを示します。 各カラムの意味は順に次の通りです。
  • メッセージの状態(status)
  • メッセージを識別する番号
  • 送信者アドレス
  • 受信日時
  • メールの行数と文字数(ヘッダーも含む)
  • 件名
メッセージは状態は1文字で表され意味は次の通りです。
N
新しいメッセージ
P
システムメールボックスに保存されるメッセージ
U
未読メッセージ。前回mailを呼び出したときに一覧表示されたが、その内容を読んでいないもの
*
ファイルやフォルダに保管または書き込まれたメッセージ</dd
無し
メッセージは読まれたが、削除または保管されていないメッセージ

メッセージの閲覧

カレントのメッセージを表示するにはpをタイプします。
& p
次のメッセージを読むにはEnter(またはn)だけを入力します。
& <ENTER>(または n)
直前のメッセージを表示するには-をタイプします。
& -
特定の番号のメッセージを表示するには、その番号を入力します。
& 10
=を入力すると、現在のメッセージの番号を表示します。
& =
一覧に戻りたければhをタイプします。hはヘッダーの一覧を表示します。
& h
次のヘッダーの一覧を表示したい場合はzをタイプします。hは現在のヘッダーの一覧を表示し、zはその次の一覧を表示します。
& z
z-はひとつ前のヘッダー一覧を表示します。
& z-

メッセージの削除

dと入力すると(>で示しれる)カレントメッセージ削除します。dt(またはdp)と入力するとカレントメッセージを削除して、次のメッセージを表示します。
& d
& dt(または dp)
特定の番号のメッセージを削除するにはdの後にメッセージ番号を指定します。
d 番号
d 番号 番号 番号
「番号-番号」のように範囲を指定することもできます。「*」を指定すると全てのメッセージを削除します。
d 番号-番号
d *
メッセージはすぐに削除はされません。削除するようマークが付けられるだけです。 qをタイプすると、対話が終了しメッセージが削除されます。 メッセージの削除を取り消したい場合はxをタイプして対話を終了します。

コマンドの終了

qをタイプすると、コマンドが終了し、削除マークを付けられたメッセージはメールボックスから削除されます。
& q
xをタイプすると、メールボックスの状態を変更しないでコマンドを終了します。 つまりメールボックスはmailを開始した時の状態のままです。
& x

メールを送信する

メールの送信方法をいくつか説明します。

対話形式でメールを送信する

&プロンプトが表示されているときに、新規メールを作成して送付するには次の手順を実行します。
  1. &プロンプトに続けて m を入力しEnterを押します。
  2. 「To:」が表示されるので、続けて宛先メールアドレスを入力しEnterを押します。
  3. 「Subject:」が表示されるので、続けて件名を入力しEnterを押します。
  4. その後にメッセージ本文を入力します。
  5. 本文の入力を終えるには単独行にピリオド(.)だけ入力してEnterを押します。するとメールが送信されます。
これでメッセージが送信されます。手順全体を実行した例は次の通りです。
    & m
    To: foo@example.com
    Subject: 件名を入力
    メッセージ本文を入力します。
    .
    EOT
    &

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

mailコマンドでメールを送信する場合の書式は次の通りです。
mail [-s 件名] [-c CCアドレス] [-b BCCアドレス] TOアドレス
-s 件名
メールの件名を指定します。
-c CCアドレス
CCで送るアドレスを指定します。複数指定する場合はカンマで区切って指定します。
-b BCCアドレス
BCCで送るアドレスを指定します。複数指定する場合はカンマで区切って指定します。
TOアドレス
次に例を示します。
$ mail -s test taro@example.com
Hellow World!   ←本文入力する
.               ←終了は「.」を入力
EOT
また次にようにすると1行コマンドでメールを送信できます。
$ echo 'Hellow World!' | mail -s test taro@example.com

SMTPサーバーを指定してメールを送信する

SMTPサーバーを指定してメールを送信する場合は以下のような書式で送信できます。
mail -s 件名 -S smtp=smtp://SMTPサーバーIPアドレス:ポート番号 -r 送信元アドレス TOアドレス
今回の例では-rで送信アドレスも指定しています。

メールを返信する

メールを返信するには、mailコマンドを実行して&プロンプトが表示されている状態で次の手順を実行します。
  1. &プロンプトにつづけて「r メッセージ番号」を入力してEnterを押します。
  2. メッセージ本文を入力します。
  3. 本文の入力を終えるには単独行にピリオド(.)だけ入力してEnterを押します。するとメールが送信されます。
rの後のメッセージ番号を省略するとカレントメッセージに対する返信になります。 rはCCに指定されたアドレスにも返信します。送信者だけに返信したい場合は代わりにRを使います。 上述の「対話形式ででメールを送信する」も参考にしてください。

メールを転送する

メールを転送する方法を2つ紹介します。

新規メールに転送メールを埋め込む

これは新規にメールを作成して送付手順とほぼ同じです。上述の「対話形式ででメールを送信する」も参考にしてください。
  1. &プロンプトにつづけてmを入力してEnterを押します。
  2. 「To:」が表示されるので、続けて宛先メールアドレスを入力しEnterを押します。
  3. 「Subject:」が表示されるので、続けて件名を入力しEnterを押します。
  4. その後に必要であればメッセージ本文を入力します。
  5. 本文中に「~m メッセージ番号」を入力し、メッセージ番号のメールメッセージを読み込みます。
  6. その後に必要があればメッセージ本文を入力します。
  7. 本文の入力を終えるには単独行にピリオド(.)だけ入力してEnterを押します。するとメールが送信されます。
この返信方法の例を以下に示します。
& m
To: foo@example.com
Subject: 件名を入力

メッセージ本文を入力します。

~m 3
Interpolating: 3
(continue)

メッセージ本文を入力します。
.
EOT
&
この例では「~m」の後にメッセージ番号3を指定しています。入力後にEnterを押すと次のようなメッセージが表示されます。
Interpolating: 3
(continue)
「~m」の後のメッセージ番号を省略するとカレントメッセージが読み込まれます。 「~m」の代わりに「~f」を使うことができます。「~m」は読み込んだメッセージをインデントしますが、「~f」はインデントしません。

fwdでメールを転送する

fwdを使う手順は次の通りです。
  1. &プロンプトにつづけて「fwd メッセージ番号 転送先アドレス」を入力してEnterを押します。メッセージ番号を省略するとカレントメッセージを転送します。
  2. メッセージ本文を入力します。
  3. 本文の入力を終えるには単独行にピリオド(.)だけ入力してEnterを押します。するとメールが送信されます。

ヘルプの表示

ヘルプを表示するには?をタイプします。
& ?

-Linuxコマンド

Copyright© アナグマのモノローグ , 2023 All Rights Reserved Powered by STINGER.