SUMMARY: calculating elapsed time

From: Rich Glazier (rglazier2002@yahoo.com)
Date: Fri Feb 13 2004 - 14:21:57 EST


Thanks to Bob Marcan, Charles Ballowe, Jeff Leafey,
Paul A. Sand, Martin Adolfsson, Tim Cutts, Spider
Boardman, Peyton Bland, and J.A. Gutierrez .

Perl seemed to be the favorite, and that is what I
ended up using. A sampling of responses is included.

Here is my script for a vdump | vrestore, and to clock
the time it took. I could precede the vdump with the
“time” command, but I like this better.

#! /bin/ksh
#
DATE=`date +"%r %d %h %y (%a)"`
echo $DATE >> /usr/scripts/prod_on_mars.out
DATE1=`perl -e "print time()"`
/sbin/vdump -0f - /prod_on_mars | /sbin/vrestore -xf -
-D /prod
DATE2=`perl -e "print time()"`
ELTIME=$(( $DATE2 - $DATE1 ))
ELTIMEMIN=$(( $ELTIME/60 ))
ELTIMEHRS=$(( $ELTIMEMIN/60 ))
ELTIMESEC=$(( $ELTIME%60 ))
echo "Elapsed Time (h:m:s) =
$ELTIMEHRS:$ELTIMEMIN:$ELTIMESEC" >>
/usr/scripts/prod_on_mars.out
df -k /prod /prod2 >> /usr/scripts/prod_on_mars.out
echo
"-----------------------------------------------------------------"
>> /usr/scripts/prod_on_mars.out
#
tail -49 /usr/scripts/prod_on_mars.out > /tmp/newfile
rm /usr/scripts/prod_on_mars.out
mv /tmp/newfile /usr/scripts/prod_on_mars.out
#
mailx -s "jupiter dump" . . .

RESPONSES:
----------------------------------

you can always do
perl -e "print time"

or to get a newline after it:
perl -e '$x=time; print "$x\n"'

that will print seconds since epoch.

Charles Ballowe

-----------------------------------

Rich,

You can install GNU date, but since you've already got
Perl on board,
try something like:

   perl -e 'print time()'

This returns the 'epoch' just like the %s flag to GNU
date.

Here's an example of using this to calculate the run
time of a program:

     START=`perl -e "print time()"`
     ./program-to-test
     END=`perl -e "print time()"`
     ELAPSED=$(( $#ND - $START ))
     echo "Program took $ELAPSED seconds to run"

It's a bit of a kludge, but it does let you do what
you need without
installing anything else. Hope that helps!

-- 
Jay Leafey
--------------------------
I've always just used 
    perl -e 'print time, "\n"'
(well, suitably aliased.)
-- 
-- Paul A. Sand
---------------------------
Hi,
Using Perl: perl -e 'print time()."\n"'
Good luck.
/Martin Adolfsson
----------------------------
It's actually the native way UNIX keeps time, so there
are any number 
of ways to do it, all of which ultimately access the
kernel's internal 
clock.  Here's one way:
perl -e 'print time(), "\n"'
Tim Cutts 
---------------------------
perl -le 'print time'
Spider Boardman
--- Rich Glazier <rglazier2002@yahoo.com> wrote:
> 
> Does anyone have any good tricks for calculating
> elapsed time in Tru64?  Other OSes have a %s flag to
> the date command that is total elapsed Unix time
> (since Jan 1 1970).  Is there an equivilant in
> Tru64?
> 
> Thanks,
> 
> Rich
> 
> __________________________________
> Do you Yahoo!?
> Yahoo! Finance: Get your refund fast by filing
> online.
> http://taxes.yahoo.com/filing.html
__________________________________
Do you Yahoo!?
Yahoo! Finance: Get your refund fast by filing online.
http://taxes.yahoo.com/filing.html


This archive was generated by hypermail 2.1.7 : Sat Apr 12 2008 - 10:49:51 EDT