Sponsored Content
Top Forums UNIX for Dummies Questions & Answers How to get the previous month by using `date` Post 302283133 by suneelj on Monday 2nd of February 2009 04:24:45 PM
Old 02-02-2009
Java How to get the previous month by using `date`

Hello,
I'm new to shell scripting.
We've develop a script which will grep a file on the search criteria, MON (Jan/Feb/Mar/etc). But we should set this sript in cron which will run on every first day of the month. The problem I'm having is, when I run the script, it is displaying the contents of the present month. But I need the contents of the last month.
If the present month is Feb, the output that I should get is of Jan.
I'm using below in the script.
********************************************
set -x
#!/bin/sh
MON=`date +%b` #Feb
grep \/$MON\/ File1.txt > Output1.txt #This file should have the contents of Jan, not of Feb.
********************************************

Can anyone please help me to achieve the expecting output.

Thanks
~Suneel

Last edited by suneelj; 02-02-2009 at 05:39 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

file name using previous month

This has probably been asked 100 times, but I couldn't find any articles on point. I have a script that runs on the last day of every month at 11:30pm. If cats a number of input tables that were created the previous month (or earlier), combines them into one master file and erases the indivual... (1 Reply)
Discussion started by: beilstwh
1 Replies

2. Shell Programming and Scripting

How to get previous month files

Hi, My task to to delete files which are of previous months. I have files named as follows *CCYYMMDD.xls. on a particular day i have delete previous months files i.e in Dec i have delete all nov files which look like 200511DD.XLS in Jan i have to delete all Dec files 200512DD.xls ... (7 Replies)
Discussion started by: savitha
7 Replies

3. Shell Programming and Scripting

Help, I need to get the last date of previous month

Hi, I'm new with Unix, I'm trying to get a last day of previous month with this format: %b %d %Y (example: Feb 25 2008). Here is what I have so far. #!/bin/ksh cur_month=`date +%m` cur_year=`date +%Y` prev_month=$(($cur_month-1)) # Check to see if this is January if then ... (11 Replies)
Discussion started by: sirrtuan
11 Replies

4. Shell Programming and Scripting

needs to display month for previous day date

Hello, I wanted to display the month for previous day date. Like, today date is 18-Nov-2008. So the previous date is 17-Nov-2008. The output should be November. If the today date is 1-DEC-2008, then output should be NOVEMBER. If the today date is 1-JAN-2008, then output should be DECEMBER.... (4 Replies)
Discussion started by: govindts
4 Replies

5. Shell Programming and Scripting

Pass the first date and last date of previous month

Hi All, I need to run a job every month at the beginning of the month which is scheduled through autosys, lets say on 03/01/2010. I need to pass the last month's i.e February's first_date = 02/01/2010 and last_date = 02/28/2010 as variables to a stored procedure. Can somebody please pass... (2 Replies)
Discussion started by: vigdmab
2 Replies

6. UNIX for Dummies Questions & Answers

print previous month (current month minus 1) with Solaris date and ksh

Hi folks month=`date +%m`gives current month Howto print previous month (current month minus 1) with Solaris date and ksh (7 Replies)
Discussion started by: slashdotweenie
7 Replies

7. UNIX for Dummies Questions & Answers

date command - getting previous month

Hi, On any given day, I want to capture the month that has gone by - said otherwise, how do I capture last month? expr date '+%m' - 1 Above expression is giving error. Please advise thanks ---------- Post updated at 09:28 AM ---------- Previous update was at 09:11 AM... (1 Reply)
Discussion started by: ab_2010
1 Replies

8. UNIX for Dummies Questions & Answers

Get the previous month from date

Hi All, I am using the below code to get the year and month from date: Below gives output like 201212. dt=`date '+%Y%m'` how do i get the previous month value(ie: subtract 1 from date) example output: dt=201211 Please help. :confused: (3 Replies)
Discussion started by: abhi_123
3 Replies

9. Shell Programming and Scripting

Help with getting last date of previous month and first date of previous 4th month from current date

I have requirment to get last date of previous month and the first date of previous 4th month: Example: Current date: 20130320 (yyyymmdd) Last date of previous month: 20130228 (yyyymmdd) First date of previous 4th month: 20121101 (yyyymmdd) In my shell --date, -d, -v switches are not... (3 Replies)
Discussion started by: machomaddy
3 Replies

10. Shell Programming and Scripting

Not able to fetch previous month first date and last date

I am not able to fetch first date and last date previous month date -d -1month +%Y-%m-%d date -d -1month +%Y-%m-%d I need two format dd-mm-yyy previous month 01-03-2016 previous month 31-03-2016 and also only date 1 to 31 Aprriciate your replay (4 Replies)
Discussion started by: jagu
4 Replies
CAL(1)							    BSD General Commands Manual 						    CAL(1)

NAME
cal -- displays a calendar SYNOPSIS
cal [-3hjry] [-A after] [-B before] [-d day-of-week] [-R reform-spec] [[month] year] DESCRIPTION
cal displays a simple calendar. If arguments are not specified, the current month is displayed. The options are as follows: -3 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. -h 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 high- lighted in inverse video instead of bold. -j 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. -r 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. -y 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. NOTES
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. HISTORY
A cal command appeared in Version 6 AT&T UNIX. BSD
December 21, 2007 BSD
All times are GMT -4. The time now is 10:04 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy