VACATION(1)

名称
vacation - 休暇中のメールの自動応答を設定する

書式
vacation -i [-r interval]
vacation [-a alias] login

解説
vacation は、メールの送り手に対して、メールの受け手が現在メールを 読むことができる状況にはないことを通知するメッセージを送り返します。 $HOME/.forward のなかで使います。

たとえば、 .forward に:

\hino, "|/usr/bin/vacation -a sailor-team hino"

と記述しておきます。すると、自分 (この場合はユーザhino) にメールが 送られてきた場合、 宛先が ``hino'' と ``sailor-team'' になっているメールに対しては 自動応答メッセージが送られます。

そのためには、あらかじめ、以下に示すような .vacation.msg ファイルをホームディレクトリに置いておかなければなりません。また、 .forward を変更したときは、忘れずに ``vacation -i'' を実行してください。

-a alias
    alias 宛のメールも、 login と同様に扱います。

-i  vacation データベースファイルを初期化します。 .forward ファイルを変更したときは、このオプションをつけて実行する必要があります。

-r interval
    interval で自動応答の間隔 (日数) を設定します。デフォルト は 1 週間です。自動応答の間隔を 0 にすると、各メッセージが送られるたびに 自動応答を行います。``infinite'' という文字列にすると (実際には数字以外なら なんでもかまいません)、同じ人物には一度しか自動応答をしません。 間隔を 0 にするのは非常に危険です。というのは、たとえば ``I am on vacation'' というメールがループする可能性があるからです。

自動応答のメッセージは、メールヘッダの ``To:'' か ''Cc:'' フィールドに、 login (もしくは、 -a オプションで指定された alias ) の文字列が含まれていないメールには 送られません。また、``???-REQUEST'', ``Postmaster'', ``UUCP'' , ``MAILER'', ``MAILER-DEAMON'' から送られたメールには返答しません (これらの 文字列の大文字小文字は区別します) し、メールヘッダに ``Precedence: bulk'' とか ``Precedence: junk'' という行を含んでいるメールにも通知を送りませ ん。メールを送ってきた人は、ホームディレクトリの下の .vacation.db というファイルに ndbm(3) のデータベースとして管理されます。

ホームディレクトリには、 .vacation.msg というファイルがなければならない ことがあります。このファイルに自動応答する際に使うメッセージを設定します。 このメッセージは、完全なメッセージでなければなりません (つまり、 メールヘッダも必要です)。 以下に、例を示します:

    From: mizuno
    Subject: I am on the Library.
    Delivered-By-The-Graces-Of: The Vacation program
    Precedence: bulk

    ごめんなさい。ドイツに行っています。
    水野

返答メッセージに日本語を使う場合には、漢字コードは JIS(ISO-2022-JP) でなければいけません。

vacation は、返答の相手を決定するために、標準入力の 1 行目の UNIX-style From を読み取ります。この行は、 sendmail(8) が自動的に挿入します。

引数が間違っている場合や、実際には存在しない login 名などの ために致命的なエラーが生じた場合は、システムのログファイルに syslog(8) を使って記録されます。

関連ファイル
~/.vacation.db
    バケーションデータベース
~/.vacation.msg
    応答メッセージ

関連項目
sendmail(8), syslog(8)