Sponsored Content
Full Discussion: Extract from cal
Top Forums Shell Programming and Scripting Extract from cal Post 302912875 by Corona688 on Tuesday 12th of August 2014 11:27:30 AM
Old 08-12-2014
I think you're onto something! The fourth line of the calendar is always complete, why not calculate from it?

That's robust/complete enough to work on any day of the week. 1 for Sunday, 7 for Saturday.

Code:
$ cal
     August 2014
Su Mo Tu We Th Fr Sa
                1  2
 3  4  5  6  7  8  9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

$ for N in 1 2 3 4 5 6 7
do
        cal | awk 'NR==4 { while(($DAY+0) > 7) $DAY -= 7; print $DAY; exit }' DAY=$N
done

3
4
5
6
7
1
2

$

There's probably a smarter way with modulous, but that's tricky and longwinded when numbers count from 1 instead of 0, so maybe not...
 

10 More Discussions You Might Find Interesting

1. 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

2. UNIX for Dummies Questions & Answers

cal

hey everyone. I'm new to UNIX, and I'm having trouble with the cal command. I know that you can display a calendar if you just type in 'cal 3 2005' for example. But how would you do it if you just wanted the calendars displayed to be from March 2005 to June 2005? Thanks (4 Replies)
Discussion started by: pythonman
4 Replies

3. 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

4. UNIX for Dummies Questions & Answers

Cal question

This probably would be a cake walk for you, but i am having trouble with this. I am trying to print every tuesday of the month from cal, and the FS default is space. There is one row that has few spaces at the beginning and so when i print $3, those spaces get ingnored and a different day gets... (2 Replies)
Discussion started by: Vin
2 Replies

5. Shell Programming and Scripting

parsing cal cmd

:o given a date example mm dd yyyy 01 02 1999 how can your parse cal 01 1999 and find the date in the above case 02 and display what the actual day was eg s m t w t f s Thanks in advance Dragrid (7 Replies)
Discussion started by: dragrid
7 Replies

6. Shell Programming and Scripting

Get day of week from cal

Hi all, I am trying to get dow from cal using below script #! /bin/bash YEAR=`echo $1 | cut -c 1-4` MONTH=`echo $1 | cut -c 5-6` DAY=`echo $1 | cut -c 7-8` for i in 1 2 3 4 5 6 7 do dayofweek=`cal $MONTH $YEAR | awk '$i == $DAY {printf("%s","$i")}'` echo $dayofweek... (4 Replies)
Discussion started by: bzylg
4 Replies

7. UNIX for Dummies Questions & Answers

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... (6 Replies)
Discussion started by: atlantis
6 Replies

8. 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

9. Homework & Coursework Questions

Using cal in a script

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: Write a shell script that will: "Display" the number of days in the current month. For example: September... (1 Reply)
Discussion started by: eaafuddy
1 Replies

10. Shell Programming and Scripting

Cal -m on bash

Hi, I want to make Monday as the first day of the month while using cal command when I execute without bash, its working fine /bin/sh cal -m 03 2013 March 2013 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30... (5 Replies)
Discussion started by: infyanurag
5 Replies
Prima::Calendar(3)					User Contributed Perl Documentation					Prima::Calendar(3)

NAME
Prima::Calendar - standard calendar widget SYNOPSIS
use Prima::Calendar; my $cal = Prima::Calendar-> create( useLocale => 1, onChange => sub { print $_[0]-> date_as_string, " "; }, ); $cal-> date_from_time( localtime ); $cal-> month( 5); DESCRIPTION
Provides interactive selection of date between 1900 and 2099 years. The main property, date, is a three-integer array, day, month, and year, in the format of perl localtime ( see "localtime" in perlfunc ) - day can be in range from 1 to 31,month from 0 to 11, year from 0 to 199. API
Events Change Called when the date property is changed. Properties date DAY, MONTH, YEAR Accepts three integers in format of "localtime". DAY can be from 1 to 31, MONTH from 0 to 11, YEAR from 0 to 199. Default value: today's date. day INTEGER Selects the day in month. firstDayOfWeek INTEGER Selects the first day of week, an integer between 0 and 6, where 0 is Sunday is the first day, 1 is Monday etc. Default value: 0 month Selects the month. useLocale BOOLEAN If 1, the locale-specific names of months and days of week are used. These are read by calling "POSIX::strftime". If invocation of POSIX module fails, the property is automatically assigned to 0. If 0, the English names of months and days of week are used. Default value: 1 See also: date_as_string year Selects the year. Methods can_use_locale Returns boolean value, whether the locale information can be retrieved by calling "strftime". month2str MONTH Returns MONTH name according to useLocale value. make_months Returns array of 12 month names according to useLocale value. day_of_week DAY, MONTH, YEAR, [ USE_FIRST_DAY_OF_WEEK = 1 ] Returns integer value, from 0 to 6, of the day of week on DAY, MONTH, YEAR date. If boolean USE_FIRST_DAY_OF_WEEK is set, the value of "firstDayOfWeek" property is taken into the account, so 0 is a Sunday shifted forward by "firstDayOfWeek" days. The switch from Julian to Gregorian calendar is ignored. date_as_string [ DAY, MONTH, YEAR ] Returns string representation of date on DAY, MONTH, YEAR according to useLocale property value. date_from_time SEC, MIN, HOUR, M_DAY, MONTH, YEAR, ... Copies date from "localtime" or "gmtime" result. This helper method allows the following syntax: $calendar-> date_from_time( localtime( time)); AUTHOR
Dmitry Karasik, <dmitry@karasik.eu.org>. SEE ALSO
Prima, Prima::Widget, POSIX, "localtime" in perlfunc, "time" in perlfunc, examples/calendar.pl. perl v5.14.2 2009-02-24 Prima::Calendar(3)
All times are GMT -4. The time now is 12:48 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy