Sponsored Content
Top Forums Shell Programming and Scripting Date - incorrect results for previous date Post 302899379 by Chubler_XL on Monday 28th of April 2014 04:27:18 PM
Old 04-28-2014
It's probably related to daylight savings adjustments.

Try specifying Timezone to UTC for each data command:

Code:
$ TZ=UTC date -d 20140310 +%s
1394409600
$ expr 1394409600  - 86400
1394323200
$ TZ=UTC date +"%Y%m%d" -d @1394323200
20140309

This User Gave Thanks to Chubler_XL For This Post:
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

How to find Previous date and Coming date

Hi All, How to find a date which is 7 days from the current date as well as how to find a date which is 7 days before this current date. Urgently i need help. Thanks in Advance Regards Arunava (2 Replies)
Discussion started by: arunava_maity
2 Replies

2. Shell Programming and Scripting

Specify a previous date as start date in shell script

Hi, I am trying to modify a script which accepts date in format dd/mm/yy. I am trying to modify the script so that it retrieves the date that was 15 days earlier from today as start date. Eg.if today is 05/09/2006, the script should retrieve 21/08/2006 as start date. Is there any script/code to... (2 Replies)
Discussion started by: ritzwan0
2 Replies

3. Shell Programming and Scripting

want to get previous date from date command in ksh

I want to get previous date from date command. I am using ksh shell. Exmp: today is 2008.09.04 I want the result : 2008.09.03 Please help. Thanks in advance. (4 Replies)
Discussion started by: rinku
4 Replies

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

5. Shell Programming and Scripting

finding the previous day date and creating a file with date

Hi guys, I had a scenario... 1. I had to get the previous days date in yyyymmdd format 2. i had to create a file with Date inthe format yyyymmdd.txt format both are different thanks guys in advance.. (4 Replies)
Discussion started by: apple2685
4 Replies

6. Shell Programming and Scripting

Get Previous date from a given date

Hi all, I have a variable where it has a date value in the format YYYY-MM-DD eg-> pcontromModate="2010-11-31" How can i get the previous date of pcontromModate in the format YYYY-MM-DD (3 Replies)
Discussion started by: morbid_angel
3 Replies

7. Shell Programming and Scripting

Get Previous date of a past date

Hi all, I have a variable where it has a past date value in the format YYYY-MM-DD eg-> pcontromModate="2008-11-31" How can i get the date 1 day before the pcontromModate. The required date is 2008-11-30. ..Plz reply since its an urgent one (2 Replies)
Discussion started by: morbid_angel
2 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. Shell Programming and Scripting

Script to get previous date for the given input date..

hi all, need a script or command to get the previous date for the given input date... like in my script i will pass date as input parameter like 2014-12-01 and i want the output as previous date.. ie.. 2014-11-30 (2 Replies)
Discussion started by: hemanthsaikumar
2 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
ctime(3C)																 ctime(3C)

NAME
ctime(), ctime_r(), asctime(), asctime_r(), daylight(), difftime(), gmtime(), gmtime_r(), localtime(), localtime_r(), mktime(), timezone(), tzname(), tzset() - convert date and time to string SYNOPSIS
DESCRIPTION
Convert the broken-down time contained in the structure pointed to by timeptr and return a pointer to a 26-character string in the form: All the fields have constant width. returns NULL and sets errno to if tm_year in is less than 0 or is greater than 8099. In both 32-bit and 64-bit HP-UX, the minimum date supported by is January 1 00:00:00 1900 and the maximum date supported by is December 31 23:59:59 9999. is identical to except that it places the result in the user supplied and returns a pointer to upon success. A buffer length of at least 26 is required. Convert the calendar time pointed to by timer, representing the time in seconds since the Epoch, and return a pointer to the local time in the form of a string. Equivalent to: The minimum date supported by in both 32-bit and 64-bit HP-UX is Friday December 13 20:45:52 UTC 1901. The maximum dates supported by are Tuesday January 19 03:14:07 UTC 2038 and Friday December 31 23:59:59 UTC 9999 in 32-bit HP-UX and 64-bit HP-UX, respectively. In 64-bit HP-UX, returns NULL and sets errno to if timer is less than the number of seconds that corresponds to the mini- mum date supported (i.e., as defined in or exceeds the number of seconds that corresponds to the maximum date supported. is identical to except that it places the result in the user supplied and returns a pointer to upon success. A buffer length of at least 26 is required. Return the difference in seconds between two calendar times: time1 - time0. Convert directly to Coordinated Universal Time (UTC), the time standard used by the HP-UX operating system. returns a pointer to the structure described below. The minimum date supported by in both 32-bit and 64-bit HP-UX is Friday December 13 20:45:52 UTC 1901. The maximum dates supported by are Tuesday January 19 03:14:07 UTC 2038 and Friday December 31 23:59:59 UTC 9999 in 32-bit HP-UX and 64-bit HP-UX, respectively. In 64-bit HP-UX, returns NULL and sets errno to if timer is less than the number of seconds that corresponds to the mini- mum date supported (i.e., as defined in or exceeds the number of seconds that corresponds to the maximum date supported. is identical to except that stores the result in the pointed to by and returns upon success. Correct for the time zone and any summer time zone adjustments (such as Daylight Savings Time in the USA), according to the contents of the environment variable (see below). returns a pointer to the structure described below. The minimum date supported by in both 32-bit and 64-bit HP-UX is Friday December 13 20:45:52 UTC 1901. The maximum dates supported by are Tuesday January 19 03:14:07 UTC 2038 and Friday December 31 23:59:59 UTC 9999 in 32-bit HP-UX and 64-bit HP-UX, respectively. In 64-bit HP-UX, returns NULL and sets errno to if timer is less than the number of seconds that corresponds to the mini- mum date supported (i.e., as defined in or exceeds the number of seconds that corresponds to the maximum date supported. is identical to except that stores the result in the pointed to by and returns upon success. Convert the broken-down time (expressed as local time) in the structure pointed to by timeptr into a calendar time value with the same encoding as that of the values returned by The original values of the and components of the structure are ignored, and the original values of the other compo- nents are not restricted to the ranges indicated below. A positive or zero value for causes to initially presume that Daylight Saving Time respectively is or is not in effect for the specified time. A negative value for causes to attempt to determine whether Daylight Saving Time is in effect for the specified time. Upon successful completion, all the components are set to represent the specified calendar time, but with their values forced to the ranges indicated below. The final value of is not set until and are determined. returns the specified calendar time encoded as a value of type The minimum date supported by in both 32-bit and 64-bit HP-UX is Friday December 13 20:45:52 UTC 1901. The maximum dates supported by are Tuesday January 19 03:14:07 UTC 2038 and Friday December 31 23:59:59 UTC 9999 in 32-bit HP-UX and 64-bit HP-UX, respectively. For 32-bit if the calendar time cannot be represented, the function returns the value and sets to Note the value also corresponds to the time 23:59:59 on Dec 31, 1969 (plus or minus time zone and Daylight Saving Time adjustments). Thus it is necessary to check both the return value and to reliably detect an error condition. The behavior of 64-bit beyond the supported ranges is undefined. Sets the values of the external variables timezone, daylight, and tzname according to the contents of the environment variable (independent of any time value). The functions and (see strftime(3C)) call and use the values returned in the external variables described below for their operations. can also be called directly by the user. When the environment variable is not set, checks the default file for the timezone value and sets timezone values based on that. The file contains the timezone value used by when the environment variable is not set. The format for the file is same as format without the prefix Please check environ(5) for format. If the value of the timezone cannot be determined using the environment variable or the file it is set to the default value of EST5EDT. If the timezone is set to the default value of EST5EDT and the timezone adjustment file is not avail- able, the timezone is set to a default value of UTC (Coordinated Universal Time). can be modified for an appropriate default value for timezone. The header file contains declarations of all relevant functions and externals. It also contains the structure, which includes the follow- ing members: int tm_sec; /* seconds after the minute - [0,61] */ int tm_min; /* minutes after the hour - [0,59] */ int tm_hour; /* hours - [0,23] */ int tm_mday; /* day of month - [1,31] */ int tm_mon; /* month of year - [0,11] */ int tm_year; /* years since 1900 */ int tm_wday; /* days since Sunday - [0,6] */ int tm_yday; /* days since January 1 - [0,365] */ int tm_isdst; /* daylight savings time flag */ The value of is positive if a summer time zone adjustment such as Daylight Savings Time is in effect, zero if not in effect, and negative if the information is not available. The external variable contains the difference, in seconds, between UTC and local standard time (for example, in the U.S. Eastern time zone (EST), is 5*60*60). The external variable is non-zero only if a summer time zone adjustment is specified in the environment variable. The external variable contains the local standard and local summer time zone abbreviations as specified by the environment variable. EXTERNAL INFLUENCES
Locale The category determines the interpretation of the bytes within format as single and/or multi-byte characters. Environment Variables The function uses the contents of to set the values of the external variables and also determines the time zone name substituted for the and directives and the time zone adjustments performed by and Two methods for specifying a time zone within are described in environ(5). International Code Set Support Single and multibyte character code sets are supported. RETURN VALUE
For and if the buffer is of insufficient length, a NULL is returned and errno set to and return a NULL and set errno to if NULL pointers are passed in as arguments. A NULL is returned and errno is set to if the input to the following routines is not within the supported range: APPLICATION USAGE
The return values for and point to static data whose contents is overwritten by each call. WARNINGS
Users of and should also note that these functions now conform to POSIX.1c. The old prototypes of these functions are supported for compat- ibility with existing DCE applications only. The range of extends to 61 to allow for the occasional one or two leap seconds. However, the "seconds since the Epoch" value returned by (see time(2)) and passed as the timer argument does not include accumulated leap seconds. The structure generated by and will never reflect any leap seconds. Upon successful completion, forces the value of the component to the range [0,59]. AUTHOR
was developed by AT&T and HP. SEE ALSO
time(2), getdate(3C), setlocale(3C), strftime(3C), tztab(4), environ(5), lang(5), langinfo(5), thread_safety(5). STANDARDS CONFORMANCE
ctime(3C)
All times are GMT -4. The time now is 10:37 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy