kazmax - Linux で自宅サーバー

vacation - コマンド (プログラム) の説明 - Linux コマンド集 一覧表

  1. 名称
  2. 書式
  3. 解説
  4. 関連ファイル
  5. 関連項目
  6. 歴史

名称

vacation - 不在の通知を返送する

書式

vacation [ -i ][ -I ][ -r interval ][ -x ][ -a alias ][ -d ][ -f database ][ -m message ][ -s address ][ -t time ][ -z ] login

解説

vacation は、メールの送信者に対して、あなたが現在メールを 読んでいない旨を通知するメッセージを返送します。通常、 .forward ファイルの中で使われます。 例えば、あなたの .forward ファイルの中で次のように記述します。
\eric, "|/usr/bin/vacation -a allman eric"

これで、あなた自身 (ここではログイン名が eric であるとします) にメッセージを送るとともに、 ``eric'' もしくは ``allman'' に宛てられたメッセージに自動応答します。

以下のオプションを指定することができます。

-a alias
alias 宛てのメッセージをユーザのログイン名に送られたメールと同様に処理します。
-d
エラーおよびデバッグのメッセージを、syslog の代りに標準出力へ送ります。 本オプションを使用しない場合、正しくない引数や存在しない loginvacation を呼び出す等の致命的なエラーは、 syslog(8) を使用して、システムログファイルへ記録します。
-f filename
データベース名として、 filename~/.vacation.db の代りに使用します。 filename が / で開始しない場合には、~ からの相対となります。
-i
vacation データベースを初期化します。 これは、 .forward ファイルを変更する前に行なっておく必要があります。
-I
-i と同じです (後方互換性のためにあります)。
-l
vacation データベースファイルの内容を列挙します。 この情報には、 アドレスと、それぞれのアドレスにおいて最後に自動応答した時刻を含みます。
-m filename
送信されるメッセージを含むファイルとして、 filename~/.vacation.msg の代りに使用します。 filename が / で開始しない場合には、~ からの相対となります。
-r interval
自動応答の間隔を interval 日に設定します。デフォルトは 1 週間です。間隔を ``0'' に設定すると、全てのメッセージに対して自動応答を行ないます。 ``infinite'' (実際には数字以外の文字ならなんでも) を設定すると、 同じ送信者には一度しか自動応答を行ないません。
-s address
受け付けるメールの From 行にある送信者アドレスの代りに、 address を、vacation メッセージの受信者として使用します。
-t time
無視されます。 Sun の vacation プログラムとの互換性のためだけに存在します。
-x
除外リストを標準入力から読み込みます (行毎に 1 アドレス)。 除外リストに含まれるアドレスから届くメールに対しては、 vacation は返送しません。 除外リストの要素として ``@domain'' を指定することで、ドメイン全体を除外することも可能です。
-z
vacation メッセージの送信者を、ユーザの代りに ``<>'' にします。 vacation メッセージの送信者を空の逆パスにすることは standards-track RFC は求めていませんので、RFC 違反となるかもしれません。

login (もしくは -a オプションによって指定された alias ) がメールの ``To:'' もしくは ``Cc:'' ヘッダになければ、自動応答は送られません。また、 ``???-REQUEST'', ``???-RELAY'', ``???-OWNER'', ``OWNER-???'', ``Postmaster'', ``UUCP'', ``MAILER'', ``MAILER-DAEMON'' から (大文字、小文字は区別されません) のメールや、 ``Precedence: bulk'' や ``Precedence: junk'' の行がヘッダに含まれているメールに対しても自動応答は送られません。 あなたへのメールの送信者のアドレスは ホームディレクトリの .vacation.db ファイル中で db(3) を使用して管理されます。

vacation ではホームディレクトリに .vacation.msg ファイルを置くことによって、 あなたへのメールの送信者へのメッセージを指定します。 このファイルは (ヘッダを含む) 完全なメッセージでなければなりません。 以下に例を示します。

From: eric@CS.Berkeley.EDU (Eric Allman)
Subject: I am on vacation
Delivered-By-The-Graces-Of: The Vacation program
Precedence: bulk


わたしは 7 月 22 日まで休暇をとっています。緊急の場合は Keith Bostic <bostic@CS.Berkeley.EDU> に連絡願います。 --eric

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

vacation はメールの送信者を決定するために標準入力の 1 行目の UNIX ``From'' 行を読みます。この ``From'' 行は sendmail(8) が自動的に付加するものです。

vacation が不正な引数で呼ばれたり、 login 名が存在しないような致命的なエラーはシステムのログファイルに syslog(8) を使って記録されます。

関連ファイル

~/.vacation.db
デフォルトのデータベースファイル
~/.vacation.msg
デフォルトの送信メッセージ

関連項目

sendmail(8), syslogd(8)

歴史

vacation コマンドは 4.3BSD から登場しました。