Sponsored Content
Homework and Emergencies Homework & Coursework Questions How to minus 2 month from current date? Post 302894801 by hini on Thursday 27th of March 2014 10:43:24 AM
Old 03-27-2014
How to minus 2 month from current date?

I am running a script in ksh to get the 2 months back date from system date.The below code is giving correct date output from putty command prompt.But while running the script is .ksh file it is giving the error below.Please suggest.
Code:
[#!/bin/ksh
newdate=$(echo 2 | awk -v date="$(date "+%m %d %Y")" -v OFS="/" '
{num=$0 
split(date, a); m=a[1]; d=a[2]; y=a[3]
m-=num
while(m < 1) {m+=12; y--}
printf("%02d%s%02d%s%s\n", m, OFS, d, OFS, y)}')
echo "\$\$FROMDATE="$newdate > /usr/local/infadev/LkpFiles/EXT_CROSS_REF_weekly_param.txt

exit 0]
error:

/usr/local/infadev[instipcd] > ksh -x test.ksh
+ + echo 2
+ date +%m %d %Y
+ awk -v date=03 27 2014 -v OFS=/
{num=$0
split(date, a); m=a[1]; d=a[2]; y=a[3]
m-=num
while(m < 1) {m+=12; y--}
printf("%02d%s%02d%s%s\n", m, OFS, d, OFS, y)}
 Syntax Error The source line is 1.
 The error context is
 <<<             >>>
 awk: 0602-500 Quitting The source line is 1.
newdate=
+ echo $$FROMDATE=
+ 1> /usr/local/infadev/LkpFiles/EXT_CROSS_REF_weekly_param.txt
+
test.ksh[9]: ^M:  not found.
+ exit 0

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

getting hour minus the current time

Can some one help me getting last hour of the current time with date command in a script. (7 Replies)
Discussion started by: shehzad_m
7 Replies

2. Shell Programming and Scripting

How to find the create time of a file if current date is in next month

Hi All, I want to find the time diffrence between currnt time and "abc.txt" file create time. I have solve that but if the abc.txt file created last month then is there any process to find the difftent? Exp: Create time of abc.txt is "Apr 14 06:48" and currect date is "May 17 23:47".... (1 Reply)
Discussion started by: priyankak
1 Replies

3. Shell Programming and Scripting

Script to find previous month last day minus one day timestamp

Hi All, I need to find the previous month last day minus one day, using shell script. Can you guys help me to do this. My Requirment is as below: Input for me will be 2000909(YYYYMM) I need the previous months last day minus 1 day timestamp. That is i need 2000908 months last day minus ... (3 Replies)
Discussion started by: girish.raos
3 Replies

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

5. Shell Programming and Scripting

How to extract log data based on current date and month ?

Hi Gurus, I'm using HP-UX B.11.23 operating system. I've been trying to extract this log info based on the current date and month, but was having some issues as the date column which on the 4th column has a comma and the 5th column has a dot tied to it. Here is the output from my shut... (5 Replies)
Discussion started by: superHonda123
5 Replies

6. UNIX and Linux Applications

sqlite: calculating with dates - compare current date minus 6 months with stored record

Hi I have a table with name, date in format DD.MM.YYYY. I need to something like this (I try to explain in pseudo code) if SYSDATE (current date) minus 6 months > $expiry date print OK else print NOK with $name and $expiry date I know this is possible with Oracle. How to do this... (0 Replies)
Discussion started by: slashdotweenie
0 Replies

7. Shell Programming and Scripting

current date - one month in AIX

Hi, i unable to get the last month date in AIX. current date - one month Based on the forums tried but did not find the relevent information. Any help grealy appriciated. Thanks Suri. (3 Replies)
Discussion started by: onesuri
3 Replies

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

9. AIX

AIX - Get next month from current date

As said in object, how can i obtain that? In linux i use date -d "1 month" +"%m%Y". Thanks i advance. (8 Replies)
Discussion started by: fabfisc
8 Replies

10. UNIX for Beginners Questions & Answers

How to get first & last day of a month from current date?

Hi, I need the first & last day of a month from any given date. For better understanding, if i need to back-fill data for date 07/20/2019 i.e July 20 2019, i need the first & last day has 07/01/2019 - 07/31/2019. FYI: I'm using GIT BASH terminal. sample code: export DT=$(date --date='6 days... (2 Replies)
Discussion started by: Rocky975583
2 Replies
date(1) 						      General Commands Manual							   date(1)

Name
       date - print date and time

Syntax
       date [-c | -u] [ +format ] [[yy[mm[dd]]]hhmm[.ss][-[-]tttt][z]]

Description
       If no argument is given, or if the argument begins with +, the current date and time are printed.  Otherwise, the current date is set.  The
       first mm is the month number; dd is the day number in the month; hh is the hour number (24 hour clock); the second mm is the minute number;
       .ss  the second; -[-]tttt is the minutes west of Greenwich; a positive number means your time zone is west of Greenwich (for example, North
       and South America) and a negative number means it is east of Greenwich (for example Europe); z is a one letter code indicating the dst cor-
       rection mode (n=none, u=usa, a=australian, w=western europe, m=middle europe, e=eastern europe); yy is the last 2 digits of the year number
       and is optional.  The following example sets the date to Oct 8, 12:45 AM:
       date 10080045
       The current year is the default if no year is mentioned.  The system operates in GMT.  The takes care of the conversion to and  from  local
       standard and daylight time.

       If  the	argument begins with +, the output of is under the control of the user.  The format for the output is similar to that of the first
       argument to All output fields are of fixed size (zero padded if necessary).  Each field descriptor is preceded by % and is replaced in  the
       output by its corresponding value.  A single % is encoded by %%.  All other characters are copied to the output without change.	The string
       is always terminated with a new-line character.

Options
       -c     Perform operations using Coordinated Universal Time (UCT) instead of the default local time. The UCT does not use  leap  seconds	so
	      UCT is the same as GMT.

       -u     Perform operations using Greenwich Mean Time (GMT) instead of the default local time.

       + format
	      The following is a list of field Descriptors that can be used in the format (Note: date exits after processing format information) :

		 %a   Locale's abbreviated weekday name

		 %A   Locale's full weekday name

		 %b   Locale's abbreviated month name

		 %B   Locale's full month name

		 %c   Locale's date and time representation

		 %d   Day of month as a decimal number (01-31)

		 %D   Date (%m/%d/%y)

		 %h   Locale's abbreviated month name

		 %H   Hour as a decimal number (00-23)

		 %I   Hour as a decimal number (01-12)

		 %j   Day of year (001-366)

		 %m   Number of month (01-12)

		 %M   Minute number (00-59)

		 %n   Newline character

		 %p   Locale's equivalent to AM or PM

		 %r   Time in AM/PM notation

		 %S   Second number (00-59)

		 %t   Tab character

		 %T   Time (%H/%M/%S)

		 %U   Week number (00-53), Sunday as first day of week

		 %w   Weekday number (0[Sunday]-6)

		 %W   Week number (00-53), Monday as first day of week

		 %x   Locale's date representation

		 %X   Locale's time representation

		 %y   Year without century (00-99)

		 %Y   Year with century

		 %Z   Timezone name, no characters if no timezone

		 %%   %

Examples
       The following command line
       date +%m/%d/%y
       generates the following output
       04/02/89
       The following command line
       date +"DATE: %m/%d/%y%nTIME: %H:%M:%S"
       generates the following output
       DATE: 04/02/89
       TIME: 14:45:05
       The quotes (") are necessary because the format contains blank characters. Use single quotes (') to prevent interpretation by the shell.

Diagnostics
       Failed to set date: Not owner
	    You are not the super-user and you tryed to change the date.  Do not change the date while the system is running in multiuser mode.

Restrictions
       An attempt to set a date to before 1/1/1970 will result in the date being set to 1/1/1970.

Files
       /dev/kmem

																	   date(1)
All times are GMT -4. The time now is 12:04 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy