Thanks Benjamin, Ben and Paul. I'll give this a whirl.
Thanks,
M
Benjamin Franz wrote:
On Sun, 12 Mar 2006, M. Lewis wrote:
I'm trying to get the elapsed time. The following gives me '1',
however I would like it to give me 1.98333333. Where am I missing the
boat?
#!/bin/sh
TIME1=`date +%s`
echo $TIME1
sleep 119
TIME2=`date +%s`
echo $TIME2
ELTIME=$[ ($TIME2 - $TIME1)/60 ]
echo $ELTIME
Do you need elapsed time _in_ your script or elapsed time _for_ your
script/program? If the latter,
time myscriptname
will give you good numbers (see 'man time' for info on 'time' options) a
lot easier.
If the former, look at the '%N' option to date (IOW: date '+%s.%N')
(otherwise you have up to a full second error in the timing) and bc for
floating point arithmetic.
#!/bin/sh
TIME1=`date '+%s.%N'`
echo $TIME1
sleep 2
TIME2=`date '+%s.%N'`
echo $TIME2
ELTIME=`echo "($TIME2 - $TIME1)/60" | bc -l`
echo $ELTIME
--
Microsoft Vista - because "Virus Installer" was too long.
00:10:01 up 8 days, 3:53, 7 users, load average: 0.04, 0.35, 0.43
Linux Registered User #241685 http://counter.li.org