Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
CALENDAR(1)		  BSD General Commands Manual		   CALENDAR(1)

     calendar -- reminder service

     calendar [-A num] [-a] [-B	num] [-D moon|sun] [-d]	[-F friday]
	      [-f calendarfile]	[-l longitude] [-t dd[.mm[.year]]]
	      [-U UTC-offset] [-W num]

     The calendar utility checks the current directory for a file named
     calendar and displays lines that fall into	the specified date range.  On
     the day before a weekend (normally	Friday), events	for the	next three
     days are displayed.

     The following options are available:

     -A	num  Print lines from today and	the next num days (forward, future).

     -a	     Process the ``calendar'' files of all users and mail the results
	     to	them.  This requires super-user	privileges.

     -B	num  Print lines from today and	the previous num days (backward,

     -D	moon|sun
	     Print UTC offset, longitude and moon or sun information.

     -d	     Debug option: print current date information.

     -F	friday
	     Specify which day of the week is ``Friday'' (the day before the
	     weekend begins).  Default is 5.

     -f	calendarfile
	     Use calendarfile as the default calendar file.

     -l	longitude
	     Perform lunar and solar calculations from this longitude.	If
	     neither longitude nor UTC offset is specified, the	calculations
	     will be based on the difference between UTC time and localtime.
	     If	both are specified, UTC	offset overrides longitude.

     -t	dd[.mm[.year]]
	     For test purposes only: set date directly to argument values.

     -U	UTC-offset
	     Perform lunar and solar calculations from this UTC	offset.	 If
	     neither UTC offset	nor longitude is specified, the	calculations
	     will be based on the difference between UTC time and localtime.
	     If	both are specified, UTC	offset overrides longitude.

     -W	num  Print lines from today and	the next num days (forward, future).
	     Ignore weekends when calculating the number of days.

     To	handle calendars in your national code table you can specify
     "LANG=<locale_name>" in the calendar file as early	as possible.

     To	handle the local name of sequences, you	can specify them as:
     "SEQUENCE=<first> <second>	<third>	<fourth> <fifth> <last>" in the	calen-
     dar file as early as possible.

     The names of the following	special	days are recognized:
     Easter	      Catholic Easter.
     Paskha	      Orthodox Easter.
     NewMoon	      The lunar	New Moon.
     FullMoon	      The lunar	Full Moon.
     MarEquinox	      The solar	equinox	in March.
     JunSolstice      The solar	solstice in June.
     SepEquinox	      The solar	equinox	in September.
     DecSolstice      The solar	solstice in December.
     ChineseNewYear   The first	day of the Chinese year.
     These names may be	reassigned to their local names	via an assignment like
     "Easter=Pasen" in the calendar file.

     Other lines should	begin with a month and day.  They may be entered in
     almost any	format,	either numeric or as character strings.	 If the	proper
     locale is set, national month and weekday names can be used.  A single
     asterisk (``*'') matches every month.  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.

     The names of the recognized special days may be followed by a positive or
     negative integer, like: "Easter+3"	or "Paskha-4".

     Weekdays may be followed by ``-4''	... ``+5'' (aliases for	last, first,
     second, third, fourth) for	moving events like ``the last Monday in

     By	convention, dates followed by an asterisk are not fixed, i.e., change
     from year to year.

     Day descriptions start after the first <tab> character in the line; if
     the line does not contain a <tab> character, it is	not displayed.	If the
     first character in	the line is a <tab> character, it is treated as	a con-
     tinuation of the previous line.

     The calendar file is preprocessed by a limited subset of cpp(1) inter-
     nally, allowing the inclusion of shared files such	as lists of company
     holidays or meetings.  This limited subset	consists of #include #ifndef
     #endif and	#define.  If the shared	file is	not referenced by a full path-
     name, calendar(1) searches	in the current (or home) directory first, and
     then in the directory /usr/share/calendar.	 Empty lines and lines pro-
     tected by the C commenting	syntax (/* ... */) are ignored.

     Some possible calendar entries (<tab> characters highlighted by \t	se-


	   #include <calendar.usholiday>
	   #include <calendar.birthday>

	   6/15\tJune 15 (if ambiguous,	will default to	month/day).
	   Jun.	15\tJune 15.
	   15 June\tJune 15.
	   Thursday\tEvery Thursday.
	   June\tEvery June 1st.
	   15 *\t15th of every month.
	   2010/4/15\t15 April 2010

	   May Sun+2\tsecond Sunday in May (Muttertag)
	   04/SunLast\tlast Sunday in April,
	   \tsummer time in Europe
	   Ostern-2\tGood Friday (2 days before	Easter)
	   Paskha\tOrthodox Easter

     calendar		 file in current directory.
     ~/.calendar	 calendar HOME directory.  A chdir is done into	this
			 directory if it exists.
			 calendar file to use if no calendar file exists in
			 the current directory.
     ~/.calendar/nomail	 do not	send mail if this file exists.

     The following default calendar files are provided in /usr/share/calendar:

     calendar.all	   File	which includes all the default files.
     calendar.australia	   Calendar of events in Australia.
     calendar.birthday	   Births and deaths of	famous (and not-so-famous)
     calendar.christian	   Christian holidays.	This calendar should be	up-
			   dated yearly	by the local system administrator so
			   that	roving holidays	are set	correctly for the cur-
			   rent	year.	   Days	of special significance	to computer people.
     calendar.croatian	   Calendar of events in Croatia.
     calendar.dutch	   Calendar of events in the Netherlands.
     calendar.freebsd	   Birthdays of	FreeBSD	committers.
     calendar.french	   Calendar of events in France.
     calendar.german	   Calendar of events in Germany.
     calendar.history	   Everything else, mostly U.S.	historical events.	   Other holidays, including the not-well-known, ob-
			   scure, and really obscure.
     calendar.judaic	   Jewish holidays.  The entries for this calendar
			   have	been obtained from the port deskutils/hebcal.	   Musical events, births, and deaths.	Strongly ori-
			   ented toward	rock 'n' roll.
     calendar.newzealand   Calendar of events in New Zealand.
     calendar.russian	   Russian calendar.
     calendar.southafrica  Calendar of events in South Africa.
     calendar.usholiday	   U.S.	holidays.  This	calendar should	be updated
			   yearly by the local system administrator so that
			   roving holidays are set correctly for the current
			   year.	   Includes all	calendar files except for national

     The calendar program previously selected lines which had the correct date
     anywhere in the line.  This is no longer true, the	date is	only recog-
     nized when	it occurs at the beginning of a	line.

     at(1), mail(1), cron(8)

     A calendar	command	appeared in Version 7 AT&T UNIX.

     Chinese New Year is calculated at 120 degrees east	of Greenwich, which
     roughly corresponds with the east coast of	China.	For people west	of
     China, this might result that the start of	Chinese	New Year and the day
     of	the related new	moon might differ.

     The phases	of the moon and	the longitude of the sun are calculated
     against the local position	which corresponds with 30 degrees times	the
     time-difference towards Greenwich.

     The new and full moons are	happening on the day indicated:	They might
     happen in the time	period in the early night or in	the late evening.  It
     does not indicate that they are starting in the night on that date.

     Because of	minor differences between the output of	the formulas used and
     other sources on the Internet, Druids and Werewolves should double-check
     the start and end time of solar and lunar events.

     The calendar internal cpp does not	correctly do #ifndef and will discard
     the rest of the file if a #ifndef is triggered.  It also has a maximum of
     50	include	file and/or 100	#defines and only recognises #include, #define
     and #ifndef.

     There is no possibility to	properly specify the local position needed for
     solar and lunar calculations.

BSD				 July 24, 2016				   BSD


Want to link to this manual page? Use this URL:

home | help