The calendar utility consults the file calendar in the current directory and writes lines that contain today's or tomorrow's date anywhere in the line to standard output. Most reasonable month-day dates such as Aug. 24, august 24, 8/24, and so forth, are recognized, but not 24 August or 24/8. On Fridays and weekends "tomorrow" extends through Monday. calendar can be invoked regularly by using the crontab(1) or at(1) commands.
When the optional argument - is present, calendar does its job for every user who has a file calendar in his or her login directory and sends them any positive results by mail(1). Normally this is done daily by facilities in the UNIX operating system (seecron(1M)).
If the environment variable DATEMSK is set, calendar will use its value as the full path name of a template file containing format strings. The strings consist of conversion specifications and text characters and are used to provide a richer set of allowable date formats in different languages by appropriate settings of the environment variable LANG or LC_TIME; see environ(5). Seestrftime(3C) for the list of allowable conversion specifications.
Example 1: Possible contents of a template
The following example shows the possible contents of a template:
%B %eth of the year %Y
%B represents the full month name, %e the day of month and %Y the year (4 digits).
If DATEMSK is set to this template, the following calendar file would be valid:
March 7th of the year 1989 <Reminder>
See environ(5) for descriptions of the following environment variables that affect the execution of calendar: LC_CTYPE, LC_TIME, LC_MESSAGES, NLSPATH, and TZ.
0 Successful completion.
>0 An error occurred.
/etc/passwd system password file
/tmp/cal* temporary files used by calendar
/usr/lib/calprog program used to determine dates for today and tomorrow
See attributes(5) for descriptions of the following attributes:
|ATTRIBUTE TYPE||ATTRIBUTE VALUE|
at(1), crontab(1), mail(1), cron(1M), ypbind(1M), strftime(3C), attributes(5), environ(5)
Appropriate lines beginning with white space will not be printed.
Your calendar must be public information for you to get reminder service.
calendar's extended idea of ``tomorrow'' does not account for holidays.
The - argument works only on calendar files that are local to the machine; calendar is intended not to work on calendar files that are mounted remotely with NFS. Thus, `calendar -' should be run only on diskful machines where home directories exist; running it on a diskless client has no effect.
calendar is no longer in the default root crontab. Because of the network burden `calendar -' can induce, it is inadvisable in an environment running ypbind(1M) with a large passwd.byname map. If, however, the usefulness of calendar outweighs the network impact, the super-user may run `crontab -e' to edit the root crontab. Otherwise, individual users may wish to use `crontab -e' to edit their own crontabs to have cron invoke calendar without the - argument, piping output to mail addressed to themselves.