Sponsored Content
Full Discussion: Changing AIX system date
Operating Systems AIX Changing AIX system date Post 302401261 by wfavorite on Friday 5th of March 2010 10:03:54 AM
Old 03-05-2010
The problem is that we have been trained to use time(); and its accompanying functions for so long that virtually all code uses it, and expects to see a 32bit signed value in return (return and pass by reference).

As for Linux... I would bet money that time() still returns a 32 bit signed value. As I recall, Linux has at least two timers - but it has been some time since I checked - and I did not investigate deeply.

All Unices now offer higher granularity APIs for time, but time() is the workhorse for the large majority of simple time-stamping or finding out where we are chronologically.

I am 99% sure that AIX keeps its epoch time internally in a 32 bit signed value. The kernel variable "time" and "l_bolt" are both of type time_t which is still a typedef of 32bit signed value.

---

The issue here is *why* we are using time(). It is appropriate for timestamps and such... but it is a BAD choice for any type of mathematical function (the example I used was calculating amatorizations (pardon my spellcheck)). If used for an application timestamp is works just peachy right up until 2038. If used as a mathematical calculation of dates it fails on any decently forward looking problem. For this reason (as an example Oracle and Java) development languages / environments can calculate WELL into the future or past.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Changing Creation Date to a Prespecified Date of a File In Unix

Dear Expert, Is there a command to do that in Unix? In such a way that we don't need to actually "write" or modified the content. -- monkfan (4 Replies)
Discussion started by: monkfan
4 Replies

2. AIX

Command for changing date in IBM AIX

Hello everybody, plz tell me the command for chaging the date paramater in IBM AIX.. (3 Replies)
Discussion started by: oracle_rajesh_k
3 Replies

3. Shell Programming and Scripting

Compare date from db2 table to yesterday's Unix system date

I am currently running the following Korn shell script which works fine: #!/usr/bin/ksh count=`db2 -x "select count(*) from schema.tablename"` echo "count" I would like to add a "where" clause to the 2nd line that would allow me to get a record count of all the records from schema.tablename... (9 Replies)
Discussion started by: sasaliasim
9 Replies

4. AIX

changing values for nfs shared file system on aix

Hi, I want to change the values for shared file system in aix for that I have run the command smitty chnfsexp but I am not getting the all the values which I have seen while adding the file system while exporting example smitty chnfsexp but after selecting shared file system using F4... (3 Replies)
Discussion started by: manoj.solaris
3 Replies

5. Shell Programming and Scripting

how to get what date was 28 days ago of the current system date IN UNIX

Hi, Anybody knows how to get what date was 28 days ago of the current system date through UNIX script. Ex : - If today is 28th Mar 2010 then I have to delete the files which arrived on 1st Mar 2010, (15 Replies)
Discussion started by: kandi.reddy
15 Replies

6. UNIX for Dummies Questions & Answers

Delete a row from a file if one column containing a date is greater than the current system date

Hello gurus, I am hoping someone can help me with the required code/script to make this work. I have the following file with records starting at line 4: NETW~US60~000000000013220694~002~~IT~USD~2.24~20110201~99991231~01~01~20101104~... (4 Replies)
Discussion started by: chumsky
4 Replies

7. Shell Programming and Scripting

changing date to resemble "messages file" date

the following was taken from a perl script: my $date = strftime "%B %d %H:%M:%S", localtime; how can i modify it so this date outputs the date in the form of the date of the messages file. for example: Sep 20 11:48:44 As it is right now, the perl script outputs the date like this: ... (1 Reply)
Discussion started by: SkySmart
1 Replies

8. UNIX for Beginners Questions & Answers

Changing CSV files with date . Subtracting date by values

Hi All, I have a CSV file which is as below. Basically I need to take the year column in it and find if the year is >= 20152 . If that is then I should subtract all values by 6. In the below example in description I am having number mentioned as YYWW so I need to subtract those by -5. Whereever... (8 Replies)
Discussion started by: arunkumar_mca
8 Replies

9. UNIX for Beginners Questions & Answers

Compare date in .txt with system date and remove if it's lesser than system date

Can someone help me with the code wherein there is a file f1.txt with different column and 34 column have expiry date and I need to get that and compare with system date and if expiry date is <system date remove those rows and other rows should be moved to new file f2.txt . I don't want to delete... (2 Replies)
Discussion started by: Stuti
2 Replies

10. Answers to Frequently Asked Questions

Compare date in .txt with system date and remove if it's lesser than system date

I m working on shell scripting and I m stuck where in my .txt file there is column as expiry date and I need to compare that date with system date and need to remove all the rows where expiry date is less than system date and create a new .txt with update. (1 Reply)
Discussion started by: Stuti
1 Replies
STRTOTIME(3)								 1							      STRTOTIME(3)

strtotime - Parse about any English textual datetime description into a Unix timestamp

SYNOPSIS
int strtotime (string $time, [int $now = time()]) DESCRIPTION
The function expects to be given a string containing an English date format and will try to parse that format into a Unix timestamp (the number of seconds since January 1 1970 00:00:00 UTC), relative to the timestamp given in $now, or the current time if $now is not supplied. Each parameter of this function uses the default time zone unless a time zone is specified in that parameter. Be careful not to use dif- ferent time zones in each parameter unless that is intended. See date_default_timezone_get(3) on the various ways to define the default time zone. PARAMETERS
o $time -A date/time string. Valid formats are explained in Date and Time Formats. o $now - The timestamp which is used as a base for the calculation of relative dates. RETURN VALUES
Returns a timestamp on success, FALSE otherwise. Previous to PHP 5.1.0, this function would return -1 on failure. ERRORS
/EXCEPTIONS Every call to a date/time function will generate a E_NOTICE if the time zone is not valid, and/or a E_STRICT or E_WARNING message if using the system settings or the $TZ environment variable. See also date_default_timezone_set(3) CHANGELOG
+--------+---------------------------------------------------+ |Version | | | | | | | Description | | | | +--------+---------------------------------------------------+ | 5.3.0 | | | | | | | Prior to PHP 5.3.0, relative time formats sup- | | | plied to the $time argument of strtotime(3) such | | | as this week, previous week, last week, and next | | | week were interpreted to mean a 7 day period rel- | | | ative to the current date/time, rather than a | | | week period of Monday through Sunday. | | | | | 5.3.0 | | | | | | | Prior to PHP 5.3.0, 24:00 was not a valid format | | | and strtotime(3) returned FALSE. | | | | | 5.2.7 | | | | | | | In PHP 5 prior to 5.2.7, requesting a given | | | occurrence of a given weekday in a month where | | | that weekday was the first day of the month would | | | incorrectly add one week to the returned time- | | | stamp. This has been corrected in 5.2.7 and later | | | versions. | | | | | 5.1.0 | | | | | | | Now returns FALSE on failure, instead of -1. | | | | | 5.1.0 | | | | | | | Now issues the E_STRICT and E_NOTICE time zone | | | errors. | | | | | 5.0.2 | | | | | | | In PHP 5 up to 5.0.2, "now" and other relative | | | times are wrongly computed from today's midnight. | | | This differs from other versions where it is cor- | | | rectly computed from current time. | | | | | 5.0.0 | | | | | | | Microseconds began to be allowed, but they are | | | ignored. | | | | +--------+---------------------------------------------------+ EXAMPLES
Example #1 A strtotime(3) example <?php echo strtotime("now"), " "; echo strtotime("10 September 2000"), " "; echo strtotime("+1 day"), " "; echo strtotime("+1 week"), " "; echo strtotime("+1 week 2 days 4 hours 2 seconds"), " "; echo strtotime("next Thursday"), " "; echo strtotime("last Monday"), " "; ?> Example #2 Checking for failure <?php $str = 'Not Good'; // previous to PHP 5.1.0 you would compare with -1, instead of false if (($timestamp = strtotime($str)) === false) { echo "The string ($str) is bogus"; } else { echo "$str == " . date('l dS of F Y h:i:s A', $timestamp); } ?> NOTES
Note If the number of the year is specified in a two digit format, the values between 00-69 are mapped to 2000-2069 and 70-99 to 1970-1999. See the notes below for possible differences on 32bit systems (possible dates might end on 2038-01-19 03:14:07). Note The valid range of a timestamp is typically from Fri, 13 Dec 1901 20:45:54 UTC to Tue, 19 Jan 2038 03:14:07 UTC. (These are the dates that correspond to the minimum and maximum values for a 32-bit signed integer.) Prior to PHP 5.1.0, not all platforms support negative timestamps, therefore your date range may be limited to no earlier than the Unix epoch. This means that e.g. dates prior to Jan 1, 1970 will not work on Windows, some Linux distributions, and a few other operating systems. For 64-bit versions of PHP, the valid range of a timestamp is effectively infinite, as 64 bits can represent approximately 293 bil- lion years in either direction. Note Dates in the m/d/y or d-m-y formats are disambiguated by looking at the separator between the various components: if the separator is a slash ( /), then the American m/d/y is assumed; whereas if the separator is a dash ( -) or a dot ( .), then the European d-m-y format is assumed. To avoid potential ambiguity, it's best to use ISO 8601 ( YYYY-MM-DD) dates or DateTime::createFromFormat when possible. Note Using this function for mathematical operations is not advisable. It is better to use DateTime::add and DateTime::sub in PHP 5.3 and later, or DateTime::modify in PHP 5.2. SEE ALSO
Date and Time Formats, DateTime::createFromFormat, checkdate(3), strptime(3). PHP Documentation Group STRTOTIME(3)
All times are GMT -4. The time now is 02:23 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy