CALENDAR(1)

名称
calendar - 今日や明日の情報を表示する (督促状サービスを提供する)

書式
calendar [-a] [-f file] [-l days] [-w days] [-d MMDD[[YY]YY]]

解説
calendar ユーティリティは、テキストファイルを処理し、特定の日にマッチする行を 表示します。

オプションには以下のものがあります:

-a  全ユーザの ``calendar'' ファイルを処理し、結果をメールで各ユーザに送ります。 このオプションを使うためには、スーパユーザの権限が必要です。

-d MMDD[[YY]YY]
    指定した日の行を表示します。デフォルトは今日です。 年は、数字 2 文字または 4 文字のどちらかで指定することができます。 年が指定されない場合には、今年であるとみなされます。 The year, which may be given in either two or four digit format, is used only for purposes of determining wether the given date falls on a Friday in that year (see below).

-f file
    指定したファイル名のファイルを処理して、マッチしたものを表示します。 デフォルトは calendar です。 ファイル名は絶対パスで指定してください。絶対パスで指定しなかった場合は、 カレントディレクトリからの相対位置か、 環境変数 “CALENDAR_DIR” で指定したディレクトリからの相対位置で探します。 もしくは、 -a フラグが指定されていた場合は、絶対位置ではなく各ユーザのホームディレクトリ からの相対位置で探します。

-l days
    プログラムが、指定した日数 (デフォルトは 1 日) だけ ``先読み'' し、 そのエントリを表示するようになります。

-w days
    プログラムが、指定された日が金曜のときだけ、指定した日数を ``先読み'' 日数に 足すようになります。 デフォルトは 2 で、この場合は calendar 週末を跨いで表示します。

各行は月や日で始まらなければなりません。この部分は、 数字による表記、文字による表記を含め、ほぼいかなる表記でも受け付けます。 アスタリスク (``*'') 1 つは、全ての月にマッチします。 曜日だけで月の指定のないものは、毎週のその曜日にマッチします。月だけの指定 で日のないものは、その月の 1 日 (ついたち) にマッチします。 2 つの数字が続くときは、デフォルトとして月、日の順のとします。 タブではじまる行は最後に指定した日にちが指定されたことになり、 これによって同一日の記述を複数の行に記述することが出来ます。 慣習により、日付の後にアスタリクスがついているイベントは 決まった日にちではなく、その年によって日にちが変わります。

``calendar'' ファイルは cpp(1) によって前処理されます。よって、 その会社の休日やミーティングの予定などの共有ファイルを include することが 出来ます。共有ファイルがフルパスで指定されていない場合、 cpp(1) はまずカレントディレクトリ (もしくはホームディレクトリ) を参照し、次に /usr/share/calendar ディレクトリを参照します。空行や C のコメント (/* ... */) は無視されます。

calendar ファイルの例を示します。

    #include	<calendar.usholiday>
    #include	<calendar.birthday>
    6/15		... 6 月 15 日 (曖昧な場合は、月/日 と解釈します)
    Jun. 15		... 6 月 15 日
    15 June		... 6 月 15 日
    Thursday	... 毎週木曜日
    June		... 毎年 6 月 1 日
    15 *		... 毎月 15 日

関連ファイル
デフォルトのカレンダファイルとして以下のものが用意されています (/usr/share/calendar の下に置かれています):
calendar.birthday
    有名な人 (および有名でない人) の誕生日と没日。
calendar.christian
    christian の記念日。このカレンダは、その年に合うように、 システム管理者が毎年更新する必要があります。
calendar.computer
    コンピュータ関連の人が知っておきたい記念日
calendar.history
    その他いろいろ。主にアメリカの歴史的な記念日
calendar.holiday
    その他の記念日。あまり知られていないものや、 全く 知られていないものも含まれています。
calendar.judaic
    ユダヤ教の休暇。 このカレンダは、その年に合うように、システム管理者が毎年更新する必要が あります。
calendar.music
    音楽関係の記念日、誕生日、没日。特にロック系。
calendar.usholiday
    アメリカの記念日。このカレンダは、その年に合うように、 システム管理者が毎年更新する必要があります。

関連項目
at(1), cpp(1), cron(8)

互換性
以前の calendar プログラムは、正しい日付であれば、行のどこにあっても認識するように プログラムされていましたが、本バージョンの calendar は、行の最初にある日付しか認識しません。

歴史
calendar コマンドは AT&T UNIX から登場しました。

バグ
calendar は、毎年変わるような日付、例えば ``4月の最後の月曜日''など は処理できません。