mailx プログラムを使ってメールを送信する場合は、メッセージの受信者のログイン名が必要です。受信者が別のマシン上にいる場合は、そのユーザのマシン名も必要になります。これらの情報を調べるために、who、finger、rusers などのコマンドを使うことができます。
ファイルサーバに現在ログインしている全ユーザのリストを表示するには、who コマンドを入力します。このリストには、ユーザのログイン名、その端末の型、ログインした日付と時間が表示されます。次に例を示します。
$ who elmer tty15 Feb 20 10:22 susan tty04 Feb 20 10:37 stormy tty07 Feb 20 11:49 hankw tty06 Feb 20 12:02 |
who コマンドと同様の情報を詳しく表示するには、finger コマンドを入力します。システム管理者によるこのコマンドの設定状態によって、表示される情報の内容は異なります。たとえば、次のような情報が表示されます。
$ finger Login Name TTY Idle When elmer Elmer Brown tty15 43 Thu 10:22 susan Susan Lake tty04 Thu 10:37 stormy Stormy Ball tty07 12 Thu 11:49 hankw Hank Wilson tty06 22 Thu 12:02 |
rusers コマンドを入力すると、ローカルネットワークに現在ログインしているユーザに関する情報が表示されます。rusers コマンドの使い方についての詳細は、第 9 章「ネットワークの使い方」を参照してください。
必要なユーザ情報を確認できたら、次の手順に従ってメッセージを送信します。
mailx コマンドのあとに続けてユーザのアドレスを入力します。
$ mailx user@machine |
user は受信者のログイン名、machine は受信者のマシン名です。
Return キーを押すと、mailx プログラムはメッセージの表題を入力するよう subject: と表示してくるので、表題を入力してもう一度 Return キーを押します。
メッセージの本文を入力します。改行する場合は、Return キーを押します。
画面上で文が複数行に渡って表示されていても、Return キーを押していなければ改行したとは見なされません。
メッセージの各行のテキストの最大長は 256 文字です。この制限を超えると、画面が動かなくなります。その場合は、Ctrl-C を押してメッセージの入力を中止してください。
メッセージの入力が終わったら、Return キーを押して改行します。次に、Ctrl-D を押してメッセージを送信します。
メッセージを送信するときに正しくないユーザアドレスを指定すると、システムの応答として次のようなメッセージが表示されます。
user@machine...User unknown
この場合、メッセージはメールボックスに戻されます。次回、mailx コマンドを入力したときに、次のように表示されてメールが届かなかった旨が知らされます。
N 1 Mailer-Daemon Fri Jan 3 11:13 8/49 Returned mail: User unknown |
また、メッセージが届かない場合は、ホームディレクトリ内の dead.letter というファイルにそのメッセージがコピーされます。
送信前ならば Ctrl-C を 2 回押すことによって、メッセージの入力を取り消すことができます。
メッセージを送信する前に、「カーボンコピー」を To: で指定した受信者以外に送信するよう指定できます。また、「ブラインドカーボンコピー」も送信できます。この指定では、メッセージの受信者はカーボンコピーの宛先アドレスを読み取ることができますが、ブラインドカーボンコピーのアドレスは読み取れません。
自分自身にカーボンコピーやブラインドカーボンコピーを送信すれば、独自の記録として送信したメールのコピーを保管できます。
メッセージと一緒にカーボンコピーを送信するには、次の 3 つの方法があります。
あらかじめテキストエディタを使ってホームディレクトリ内の .mailrc ファイルを編集し、次の行を挿入します。
set askcc |
mailx プログラムは、表題の入力 (Subject:) プロンプトの下にカーボンコピープロンプト (Cc:) を表示します。カーボンコピーの宛先となるユーザのアドレスを入力してください。宛先が複数の場合は、アドレスをスペースまたはコンマで区切ります。
メッセージの本文を入力したあと Ctrl-D を押す前に Return キーを押して改行し、次のコマンドを実行します。
~c address(es)
この方法によって 1 人または複数の受信者にカーボンコピーを送信する場合は、次の例のように各受信者のアドレスをスペースで区切ります。次に例を示します。
~c hank@fretful george@lonesome stormy@snoozer |
Cc:プロンプトは、~h コマンドでも表示できます。~h コマンドは、メッセージのすべての見出し行を表示します。つまり、To:、Subject:、、Cc:、Bcc: (ブラインドカーボンコピー) というプロンプトがすべて 1 行ずつ表示されます。その際に、各空白行には入力することができ、入力した行を修正することもできます。ほかのチルドコマンドと同様に、メールの本文作成中は常に改行してから ~h コマンドを実行してください。
~c、~h などのチルドコマンドについての詳細は、この章で後述の チルドコマンドを参照してください。
メールボックス内にある任意のメッセージのコピーを現在作成中のメッセージに挿入することができます。同様に、任意のテキストファイルのコピーも挿入できます。
メッセージの本文作成中に他のメッセージを挿入するには、次の形式のコマンドを使います。
~m number |
number は、挿入するメッセージの番号です。たとえば、メールボックスの 3 番目のメッセージのコピーを取り込んで新規のメッセージを作成し、それをほかのユーザに送信する場合は、次の手順を実行します。
メールの本文作成中に改行してから ~m 3 というコマンドを入力し、Return キーを押します。
mailx により、次のメッセージが表示されます。
「メッセージ挿入」 3 (continue) |
送信者の画面には 3 番目のメールの内容は表示されませんが、受信者の画面には表示されます。(続く) のあとに続けてメッセージを入力するか、あるいは取り込んだコピーをそのまま送信します。
メッセージの本文作成中に任意のテキストファイルのコピーを挿入することもできます。この場合、次の形式のコマンドを入力します。
~r filename |
たとえば、現在作成中のメッセージに outline というファイルを挿入するには、次のように入力します。
?~r outline |
メールに返事を出すには、mailx プロンプトに対して次のコマンドを入力します。
r number
メッセージの番号を入力しないと、現在のメッセージへの応答となります。
たとえば、2 番目のメッセージの送信者に応答するには、次のコマンドを入力します。
? r 2 |
mailx は自動的に応答先のアドレスを指定し、Re: Subject:という行を表示します。この行には応答するメッセージの Subject: 行の内容が表示されます。この応答メッセージは、通常のメッセージと同様に送信できます。
R コマンドは r コマンドの変形で、送信者だけでなく、応答するメッセージの受信者全員に対しても応答を送ります。不必要なメールが作成されるのを防ぐため、このコマンドは本当に必要な場合にだけ使うようにしてください。
前節で説明したのと同様の方法で、応答にもメッセージのコピーを挿入できます。応答するメッセージのコピーを挿入するには、メッセージの番号を指定しないで ~m コマンドを実行します。