Dr. David Kirkby wrote: > If you have a system with the GNU version of date, then > > date -u +%s > > will give the seconds since the Epoch. Unfortunately, it only works with GNU > date, and so will not work on Solaris, HP-UX or no doubt many other Unix > systems. > > The following script should compute this is a portable manner. Here's a few > examples > > On sage.math, where date accepts +%s > > kir...@sage:~$ date -u +%s && ./unixtime > 1260720556 > 1260720556 > > > On an HP-UX system, where date does *not* accept +%s > > bash-2.04$ uname -a > HP-UX hpbox B.11.11 U 9000/785 2016698240 unlimited-user license > bash-2.04$ ./unixtime && date -u +%s > 1260720771 > date: bad format character - s > > On an OpenSolaris system, where date does *not* accept +%s > > bash-3.2$ ./unixtime && date -u +%s > 1260720823 > %s > > > On an IBM server running AIX 6.1, where date does accept +%s > > $ uname -a > AIX client1 1 6 00C6B7C04C00 > $ ./unixtime && date -u +%s > 1260721013 > 1260721013 > > > > For every system I am able to check this on, the following script gives > exactly > the same output as the GNU date command, but in a more portable manner. > > Could a few people check it on their systems. > > If it does work, I'd propose it is used in place of the GNUism introduced in > http://trac.sagemath.org/sage_trac/ticket/6744 > > Currently the file .BUILDSTART created by #6744 is not actually used anywhere > in > Sage, but clearly the intension is to use it at some point, in which case it > will be found not to work on some systems. > > Dave > ----------------------------------------------- > > > #!/bin/sh > # Compute seconds since the Epoch. > > # Call 'date'. Note that > # %Y = year including century > # %j = day number (1-365)
1-366 that should be. > # $2 = day number (1-365) Again, it goes up to 366 in leap years. The code takes leap years into account, and is said to work until 2100, in which case, we will all be dead. (or 2034 unless unix time is changed to a 64-bit number). Dave -- To post to this group, send an email to [email protected] To unsubscribe from this group, send an email to [email protected] For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
