A good place to start is with the Unix cal command. For example, type in cal -y and it'll return a calendar for the current year. That said, merlyn has written a calendar script emulating cal. You'll need Date::Calc.
Comment on Re: A calendar tool (command-line version)