| CALENDAR(1) | General Commands Manual | CALENDAR(1) | 
calendar —
| calendar | [ -avx] [-dMMDD[[YY]YY]] [-ffile] [-ldays] [-wdays] | 
calendar utility processes text files and displays
  lines that match certain dates.
The following options are available:
-a-d
    MMDD[[YY]YY]-f
    fileCALENDAR_DIR environment variable, if set;
      otherwise, it is taken relative to the user's home directory. Or, if the
      -a flag is given, a non-absolute filename is taken
      relative to each user's home directory in turn.-l
    days-w
    dayscalendar to
      print entries through the weekend on Fridays.-vcalendar to print version information for
      itself, and then exit.-xcalendar not to set the
      CPP_RESTRICTED environment variable. Passing this
      flag allows users the (somewhat obscure) option of including a named pipe
      via
      cpp(1)'s
      #include syntax, but opens up the possibility of
      calendar hanging indefinitely if users do so
      incorrectly. For this reason, the -x flag should
      never be used with calendar
      -a.Lines should begin with a month and day. They may be entered in almost any format, either numeric or as character strings. A single asterisk (‘*’) matches every month, or every day if a month has been provided. This means that two asterisks (‘**’) matches every day of the year, and is thus useful for ToDo tasks. A day without a month matches that day of every week. A month without a day matches the first of that month. Two numbers default to the month followed by the day. Lines with leading tabs default to the last entered date, allowing multiple line specifications for a single date. By convention, dates followed by an asterisk are not fixed, i.e., change from year to year.
The “calendar” file is preprocessed by
    cpp(1), allowing the inclusion of
    shared files such as company holidays or meetings. If the shared file is not
    referenced by a full pathname,
    cpp(1) searches in the current
    (or home) directory first, and then in the directory
    /usr/share/calendar. Empty lines and lines protected
    by the C commenting syntax (/* ... */) are
  ignored.
Some possible calendar entries:
#include <calendar.usholiday> #include <calendar.birthday> 6/15 ... June 15 (if ambiguous, will default to month/day). Jun. 15 ... June 15. 15 June ... June 15. Thursday ... Every Thursday. June ... Every June 1st. 15 * ... 15th of every month. *15 ... 15th of every month. June* ... Every day of June. ** ... Every day
calendar program previously selected lines which had
  the correct date anywhere in the line. This is no longer true, the date is
  only recognized when it occurs first on the line.
In NetBSD 3.0, the
    calendar command was modified to search the user's
    home directory instead of the current directory by default. Users desiring
    the historical behavior should set the CALENDAR_DIR
    environment variable to ., or use the
    -f flag.
calendar command appeared in
  Version 7 AT&T UNIX.
calendar doesn't handle events that move around from
  year to year, i.e., “the last Monday in April”.
The -a option ignores the user's
    CALENDAR_DIR environment variable.
| June 1, 2016 | NetBSD 10.1 |