cal command


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers cal command
# 1  
Old 06-29-2010
cal command

Hello,

I wanted to display calender for the previou, current and next month in a single command...

I used the command cal -3 for this. But its throwing me a Bad Argument error.

I am using HP UX to execute this command. Is this a syntax error, or let me know if there any other ways to display the 3 months.

Thanks.
# 2  
Old 06-29-2010
"cal -3" is a syntax error.

This script should do it.

Code:
#!/bin/ksh
YYYY1=`date +%Y`
YYYY2=${YYYY1}  # Initial value - may change
YYYY3=${YYYY1}  # Initial value - may change
MM1=`date +%m`
MM2=`expr ${MM1} - 1`
MM3=`expr ${MM1} + 1`
if [ "${MM2}" -lt 1 ]
then
        MM2=12
        YYYY2=`expr ${YYYY2} - 1`
fi
if [ "${MM3}" -gt 12 ]
then
        MM3=1
        YYYY3=`expr ${YYYY3} + 1`
fi
cal ${MM2} ${YYYY2}     # Last month
cal ${MM1} ${YYYY1}     # This month
cal ${MM3} ${YYYY3}     # Next month


Last edited by methyl; 06-29-2010 at 12:00 PM.. Reason: Replace script with one which does correct range!
# 3  
Old 06-29-2010
Hi,

Thanks for the quick reply with the script. But I was asked to do that in a single command.

Thanks.
# 4  
Old 06-29-2010
Quote:
Originally Posted by atlantis
Hello,

I wanted to display calender for the previou, current and next month in a single command...

I used the command cal -3 for this. But its throwing me a Bad Argument error.

I am using HP UX to execute this command. Is this a syntax error, or let me know if there any other ways to display the 3 months.

Thanks.
Can you tell us in which OS you were able to run cal -3?
# 5  
Old 06-29-2010
Hello,
I got this command cal -3, when doing google on the same.

NAME

cal - displays a calendar
SYNOPSIS

cal [-smjy13 ] [[ month ] year ]
DESCRIPTION

Cal displays a simple calendar. If arguments are not specified, the current month is displayed. The options are as follows:

-1 Display single month output. (This is the default.) -3 Display prev/current/next month output. -s Display Sunday as the first day of the week. (This is the default.) -m Display Monday as the first day of the week. -j Display Julian dates (days one-based, numbered from January 1). -y Display a calendar for the current year.
# 6  
Old 06-29-2010
Quote:
Originally Posted by anbu23
Can you tell us in which OS you were able to run cal -3?
cal from util-linux-ng and util-linux. Smilie
# 7  
Old 06-29-2010
HP-UX does not have those Linux extensions to "cal".
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Cal command to display 5 months ?

Hi, I'm curious to know if we can display 5 months of a calendar using the cal command. I know we can three successive months (cal -3) but I wanted to know if we can do it with 5 months for example. (Give a specific month, and get as a result two previous months + the month in question + two... (12 Replies)
Discussion started by: Imane
12 Replies

2. UNIX for Dummies Questions & Answers

Cal command in UNIX

modify "cal " command to display calenders of the specified months. $ cal jan....aug (1 Reply)
Discussion started by: ssaini
1 Replies

3. Shell Programming and Scripting

Modify cal command in shell script

Plz help me To modify "cal " command to display calenders of the specified months. $ cal jan....oct (0 Replies)
Discussion started by: shivasaini
0 Replies

4. Shell Programming and Scripting

Modify cal command in shell script

Plz help me To modify "cal " command to display calenders of the specified months. $ cal jan mar nov (0 Replies)
Discussion started by: shivasaini
0 Replies

5. Shell Programming and Scripting

another cal command question.

I got this from this board yesterday cal | xargs -n1 | tail -1 which displays the current months days.. for instance if you type this in a shell today you will get 31. I would like to also display the month and year.. something like March 2011 has 31 days. how would I do that? ... (3 Replies)
Discussion started by: rontopia
3 Replies

6. Shell Programming and Scripting

parsing return from cal command

Jim , Anyone I do not have GNU date Besides I am particularly interested in how one can parse the return from the cal command. Say do - cal 11 2008 - and parse out a given date, say the 8th and return that the 8th was Saturday. ( diffrentiating between S for Saturday and Sunday , also in the case... (1 Reply)
Discussion started by: dragrid
1 Replies

7. UNIX for Dummies Questions & Answers

cal command display issues

I am using AIX version 5.3 I like the cal function because I can print a nice concise view of the calendar for the whole year. I want the calendar to display with 3 months across instead of 2, which is what is happening. My terminal display is set with 67 rows and 140 columns so that should... (0 Replies)
Discussion started by: ruddydaggerwing
0 Replies

8. Shell Programming and Scripting

Julian Dates and the Cal command

hey all, I was wondering if it was possible to get the julian date with the cal command. I know that the "-j" option will display it, however, i need the Julian Date of a specific date, in number. For example, the User would enter their age like 19800101 or YYYMMDD, like so. This info... (0 Replies)
Discussion started by: shan2on
0 Replies

9. AIX

doubt in cal command

I am new to unix... How to get all the saturdays of a specific year? for a specific month, i tried as below.. cal 02 2006 | awk '{print $7}' but it is not giving all saturdays.... can anyone help me with this? Thanks in advance, Sumi (9 Replies)
Discussion started by: sumi
9 Replies

10. UNIX for Dummies Questions & Answers

Cal command

I am trying to configure the cal command to recognize the month names. When you type: cal - you get the calander for the current month of the current year. Is there a way of making the system recognize March, and Mar. So I could type: cal March or cal mar and get the same response as cal.... (5 Replies)
Discussion started by: Astudent
5 Replies
Login or Register to Ask a Question