MSGS(1)

名称
msgs - システムからのメッセージを読むための簡単なメールプログラム

書式
msgs [-fhlpq] [number] [-number] msgs [-s] msgs [-c] [-days]

解説
msgs は、システムからのメッセージを読むためのプログラムです。 これらのメッセージはユーザ `msgs' あてにメールを送ることで送信されます。 これらのメッセージは、ユーザがシステムにログインした時に、 システムからの簡単なメッセージを一度だけ表示するのに便利です。

msgs を .login ファイル ( sh(1) を使っているならば、 .profile ) に書いておくことによって、 ログインするたびに msgs が実行されます。 もし、新しいメッセージがあれば、誰からのメッセージかという情報と、 Subject とを表示します。 もし Subject 行が無ければ、先頭の空行でない数行を表示します。 もし、より多くのメッセージがあれば、残りのメッセージ量を示し、 残りのメッセージを見るかどうかを尋ねます。 返事としては、以下のものを使うことができます:

y   メッセージを表示します。

RETURN
    y と同じです。

n   このメッセージをスキップして、次のメッセージに行きます。

-   最後に表示したメッセージを再表示します。

q   msgs を終了します。次回には読まなかったメッセージを読むことができます。

s   メッセージをセーブします。現在のメッセージをカレントディレクトリの ``Messages'' というファイルに追加します。 `s-' は表示する前にセーブします。 `s' や `s-' はその後ろに空白をはさんでセーブするファイル名を指定できます。

m   指定されたメッセージを、一時的な mailbox としてファイルに記録し、 mail(1) を起動して、記録したファイルをメールとして扱うことができるようにします。 `m' , `s' コマンドは、`-' の代わりに数字の引数を受け付けます。

msgs は、各ユーザのホームディレクトリの .msgsrc に記録されている番号を読み込んで、新たに読むべきメッセージを決定します。 /var/msgs というディレクトリには、(シーケンシャルな)メッセージ番号を ファイル名として格納しています。 /var/msgs/bounds というファイルには、 このディレクトリにあるメッセージの一番小さな番号と大きな番号を記録しています。 これにより、 msgs はメッセージがあるかどうか、ただちに判定できます。 bounds の内容が壊れている場合は、このファイルを削除することで、次回 -s オプション付きで起動されたときに、新しく bounds を作成します。 msgs が -s 以外のオプションを指定されて実行された場合、 /var/msgs/bounds が存在しないとエラーが表示されます。

-s オプションは、メッセージの配送を設定する時に使います。

    msgs: "| /usr/bin/msgs -s"

という行を /etc/mail/aliases に挿入して ( newaliases(1) 参照)、メッセージを投函できるようにします。

-c オプションは /var/msgs をクリアするために使います。 msgs を -c つきで実行するシェルスクリプトのエントリを、 /etc/periodic/daily ( periodic(8) 参照) に記述して、毎晩実行するようにするといいでしょう。 これで、21 日より古いメッセージを消すことができます。 デフォルトの日付を変更するにはコマンドラインで設定する必要があります。

メッセージを読む時のオプションとしては以下のものがあります:

-f  ``No new messages.'' を表示しません。これは、 .login ファイルなどに msgs を書いておく場合に便利です。

-q  メッセージがある場合に、``There are new messages.'' と表示するようにし ます。 .login ファイルなどに ``msgs -q'' と書いておくと便利です。

-h  メッセージの最初の部分だけを表示します。

-l  ローカルに作られたメッセージだけを報告します。

num コマンドラインから番号を与えると、 .msgsrc に記録されている番号を使わずに、指定した番号以降のメッセージを表示します。 つまり、

        msgs -h 1

    は、すべてのメッセージのはじめの部分を表示します。

-number
    .msgsrc に記録されている番号より number 分だけ戻ったメッセージから表示します。最近のメッセージを見るのに便利です。

-p  長いメッセージは、 more(1) を使います。

msgs のコマンド対話モードの時に、コマンドの代わりに番号を入力することで、 指定した番号のメッセージに移動することができます。

環境変数
msgs は、デフォルトのホームディレクトリと端末タイプを知るために、 HOME と TERM を参照します。

関連ファイル
/var/msgs/*
    メッセージデータベース
~/.msgsrc
    次のメッセージ番号を記録しているファイル

関連項目
mail(1), more(1), aliases(5), periodic(8)

歴史
msgs コマンドは、 3.0BSD から登場しました。