Manual browser: cal(1)

CAL(1) General Commands Manual CAL(1)


caldisplays a calendar


cal [-3hjry] [-A after] [-B before] [-d day-of-week] [-R reform-spec] [[month] year]


cal displays a simple calendar. If arguments are not specified, the current month is displayed. The options are as follows:
Same as “-A 1 -B 1”.
-A after
Display after months after the specified month.
-B before
Display before months before the specified month.
-d day-of-week
Specifies the day of the week on which the calendar should start. Valid values are 0 through 6, presenting Sunday through Saturday, inclusively. The default output starts on Sundays.
Highlight the current day, if present in the displayed calendar. If output is to a terminal, then the appropriate terminal sequences are used, otherwise overstriking is used. If more than one -h is used and output is to a terminal, the current date will be highlighted in inverse video instead of bold.
Display Julian dates (days one-based, numbered from January 1).
-R reform-spec
Selects an alternate Gregorian reform point from the default of September 3rd, 1752. The reform-spec can be selected by one of the built-in names (see NOTES for a list) or by a date of the form YYYY/MM/DD. The date and month may be omitted, provided that what is specified uniquely selects a given built-in reform point. If an exact date is specified, then that date is taken to be the first missing date of the Gregorian Reform to be applied.
Display the month in which the Gregorian Reform adjustment was applied, if no other month or year information is given. If used in conjunction with -y, then the entire year is displayed.
Display a calendar for the current year.

If no parameters are specified, the current month's calendar is displayed. A single parameter specifies the year and optionally the month in ISO format: “cal 2007-12” Two parameters denote the month (1 - 12) and year. Note that the century must be included in the year.

A year starts on Jan 1.


In the USA and Great Britain the Gregorian Reformation occurred in 1752. By this time, most countries had recognized the reformation (although a few did not recognize it until the 1900's.) Eleven days following September 2, 1752 were eliminated by the reformation, so the calendar for that month is a bit unusual.

In view of the chaotic way the Gregorian calendar was adopted throughout the world in the years between 1582 and 1928 make sure to take into account the date of the Gregorian Reformation in your region if you are checking a calendar for a very old date.

cal has a decent built-in list of Gregorian Reform dates and the names of the countries where the reform was adopted:

	Italy		Oct.  5, 1582	Denmark		Feb. 19, 1700 
	Spain		Oct.  5, 1582	Great Britain	Sep.  3, 1752 
	Portugal	Oct.  5, 1582	Sweden		Feb. 18, 1753 
	Poland		Oct.  5, 1582	Finland		Feb. 18, 1753 
	France		Dec. 12, 1582	Japan		Dec. 20, 1872 
	Luxembourg	Dec. 22, 1582	China		Nov.  7, 1911 
	Netherlands	Dec. 22, 1582	Bulgaria	Apr.  1, 1916 
	Bavaria		Oct.  6, 1583	U.S.S.R.	Feb.  1, 1918 
	Austria		Jan.  7, 1584	Serbia		Jan. 19, 1919 
	Switzerland	Jan. 12, 1584	Romania		Jan. 19, 1919 
	Hungary		Oct. 22, 1587	Greece		Mar. 10, 1924 
	Germany		Feb. 19, 1700	Turkey		Dec. 19, 1925 
	Norway		Feb. 19, 1700	Egypt		Sep. 18, 1928

The country known as Great Britain can also be referred to as England since that has less letters and no spaces in it. This is meant only as a measure of expediency, not as a possible slight to anyone involved.


A cal command appeared in Version 6 AT&T UNIX.
December 21, 2007 NetBSD 7.0