Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: Perl - Was unix time conversion function
I'll add a clarification. With its object interface, Perl actually lets
one define much more easily accessible data structures than one can in
C. The problem with that is that the extra code path consumed by the
accessor methods is too slow to actually *use* them in some of our code
(think tens of millions of trace file lines that you need to parse in a
few seconds). Hence the need for a lot of Perl code that looks like
$a{$b}->{$c}->{$d}->[$e]. Igh.
Don't get me wrong. I have written large applications in many languages (several thousand lines as a full-time professional software developer using C and ksh). In the past three years, I have written several thousand lines of Perl and accomplished more work than I would ever have imagined ten years ago. Perl is, for me, the best computer language in the world.
Cary Millsap
Hotsos Enterprises, Ltd.
http://www.hotsos.com
Upcoming events:
- 2003 Hotsos Symposium, Feb 9-12 Dallas
-----Original Message-----
Jared.Still_at_radisys.com
Sent: Tuesday, January 28, 2003 11:51 AM
To: Multiple recipients of list ORACLE-L
Robert,
Perl isn't really that hard.
As with any language, it can be difficult to grasp at first, but once you begin to understand it, it can be extremely powerful.
Regarding Cary's comments about the difficulty of complex Perl data structures, I would have to say that they aren't any more difficult than complex C data structures.
Data::Dumper is your friend. It can be used to print the contents and structure of any Perl data structure so that it is more easily understood.
As for Stephen Lee's comments that there's no need for Perl if you have ksh: I'll bet Stephen has a toolbox in his garage that contains a single flat blade screwdriver and no phillips screwdrivers nor any wrenches. ;)
You can do most anything in ksh: I know, I've done it. Then I learned Perl.
Jared
"Robert Freeman" <robertgfreeman_at_YAHOO.COM>
Sent by: root_at_fatcity.com
01/27/2003 10:39 PM
Please respond to ORACLE-L
To: Multiple recipients of list ORACLE-L <ORACLE-L_at_fatcity.com>
cc: Subject: Perl - Was unix time conversion function
Cary.... I once thought I wanted to do some Perl coding... So I bought a
book and started to play with it. It made my head bleed... literally I
had
little droplets of blood emerging from my head.... They rushed me to the
hospital and put me in the Perl ward where I languished for days on IV's
of Mountain Dew and pulverized Ritz crackers..... it was close.
In my mind there is nothing obvious about Perl, this coming from and old
C
coder who did pointers and linked lists in his sleep years ago. I don't
know, maybe I was having a bad day and it's time to get my "learning
Perl"
book out again....
Anyone else feel that way about Perl or am I a lone wolf in a Perl world?
RF
-----Original Message-----
Sent: Friday, January 24, 2003 4:29 PM
To: Multiple recipients of list ORACLE-L
At the risk of stating the obvious, doing it in Perl looks like this:
#!/usr/bin/perl
use Date::Format qw(time2str);
my $t = 1043447100; # for example
print time2str("%T %A %d %B %Y", $t), "\n";
Cary Millsap
Hotsos Enterprises, Ltd.
http://www.hotsos.com
Upcoming events:
- 2003 Hotsos Symposium on OracleR System Performance, Feb 9?12 Dallas
Kinda...you can change the year to 1970 if you want, this also converts
to
minutes, not seconds. It is a really ugly function but it seems to
work.
You could always use perl.
function f_minutes {
# Funky function I use to calculate the number of minutes since 2000
MIN_YEAR=$( date +"%Y" ) MIN_YEAR=$( expr ${MIN_YEAR} - 2000 ) MIN_YEAR=$( expr ${MIN_YEAR} \* 525600 ) MIN_DAYS=$( date +"%j" ) MIN_DAYS=$( expr "${MIN_DAYS}" - 1 ) MIN_DAYS=$( expr "${MIN_DAYS}" \* 1440 ) MIN_HOURS=$( date +"%H" ) MIN_HOURS=$( expr "${MIN_HOURS}" \* 60 ) MIN_MINS=$( date +"%M" ) MIN_TOTAL=$(( ${MIN_YEAR} + ${MIN_DAYS} + ${MIN_HOURS} + ${MIN_MINS}))
print ${MIN_TOTAL}
}
-----Original Message-----
Sent: Friday, January 24, 2003 1:14 PM
To: Multiple recipients of list ORACLE-L
Anybody got a handy little function to
convert a standard unix seconds-since-Jan-1970 epoch
time (stored as a number) to a readable date?
It would save me a lot of time not having to re-invent the
wheel.
Matt
-- Please see the official ORACLE-L FAQ: http://www.orafaq.net -- Author: INET: Jared.Still_at_radisys.com Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). -- Please see the official ORACLE-L FAQ: http://www.orafaq.net -- Author: Cary Millsap INET: cary.millsap_at_hotsos.com Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).Received on Tue Jan 28 2003 - 12:54:40 CST
![]() |
![]() |