Arithmetic on timestamps


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Arithmetic on timestamps
# 1  
Old 03-16-2009
Arithmetic on timestamps

Hi Friends,
please advise on shell script to add two time stamps
for example :

a=12:32
b=12:00
c=a+b=00:32

please help me to find shell script to add to two time stamps, as i need to convert time from EST to GMT or SST to prepare status of jobs in unix and to specify estimated time to complete one job.

thanks in advance
Bali Reddy
# 2  
Old 03-17-2009
i have written a script to take the time difference of two time stamp please modify it as you need
Code:
awk -v start_time=$1 -v end_time=$2 'BEGIN{
if ( start_time !~ /^[0-9]/ || end_time !~ /^[0-9]/ )
usage(start_time,end_time)
split(start_time,T2,":")
split(end_time,T1,":")
start_seconds=T1[1]*60*60+T1[2]*60+T1[3]
end_seconds=T2[1]*60*60+T2[2]*60+T2[3]
if ( start_seconds > 86401 || end_seconds > 86401)
usage("out_off_range","")
elapsed_seconds=start_seconds-end_seconds
if( elapsed_seconds < 0 )
{elapsed_seconds=elapsed_seconds*-1
calculate(end_time,start_time,elapsed_seconds)}
else
calculate(start_time,end_time,elapsed_seconds)}
function calculate(start_time,end_time,elapsed_seconds){
HH=elapsed_seconds / 3600
MM=(elapsed_seconds % 3600) / 60
SS=elapsed_seconds % 60
printf  "TIME DIFFERENCE BETWEEN "start_time"(START TIME)-"end_time"(END TIME)--> +%02d:%02d:%02d\n",HH,MM,SS }
function usage(start_time,end_time){
if( start_time=="out_off_range" )
printf "TIME OUT OFF RANGE\n"
else
printf "INVALID TIME FORMAT "start_time" "end_time"\n"
printf "USAGE : time_diff.sh <HH:MM[:SS]> <HH:MM[:SS]>\n"
exit}'

# 3  
Old 03-17-2009
if you know time diffrence
try this

[root@Reddyraja reddy]# date +"%F %T"
2009-03-17 12:53:11
to add 10 minutes
[root@Reddyraja reddy]# date +"%F %T" -d" 10 minutes"
2009-03-17 13:03:13
to subtract 10 minutes
[root@Reddyraja reddy]# date +"%F %T" -d" 10 minutes ago"
2009-03-17 12:43:16


[root@Reddyraja reddy]# date +"%F %T" -d" 5 days 10 minutes ago"
2009-03-22 12:45:47
[root@Reddyraja reddy]# date +"%F %T" -d" 5 days ago 10 minutes ago"
2009-03-12 12:46:01
[root@Reddyraja reddy]# date +"%F %T" -d" 5 days ago 10 minutes "
2009-03-12 13:06:14
[root@Reddyraja reddy]# date +"%F %T" -d" 5 days 10 minutes "
2009-03-22 13:06:19


find unix time stamp in GST
and export TZ=EST

[root@Reddyraja reddy]# export TZ=IST
[root@Reddyraja reddy]# date +%s
1237275038
[root@Reddyraja reddy]# date +"%F %T" -d@1237275038
2009-03-17 07:30:38
[root@Reddyraja reddy]# export TZ=EST
[root@Reddyraja reddy]# date +"%F %T" -d@1237275038
2009-03-17 02:30:38
# 4  
Old 03-18-2009
when i tried to verify the output with below input
start time 23:24:00 end time time :03:24:00 out put is +20:00:00 istead of 04:00
Please update to remedify abpve scenario, it appers that we should subtract from 24
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Write with a look for timestamps

hello i'm using SOX to generate a spectrogram from a wave file with the command : #sox file.wav -n spectrogram is there a way to create a spectrogram using the same command but reading file timestamps instead of the namefile.wav , since name is changing every 4 hours? (it's saved with... (2 Replies)
Discussion started by: Board27
2 Replies

2. Shell Programming and Scripting

Comparing two timestamps

Hi all!!, I'm using Ksh and working on Linux. I want to compare two timestamps, timestamp1 and timestamp2. Until, timestamp1 is lesser than timestamp2, i want to do something, lets say print something. The code i have written is: a=`date +%H:%M:%S` b=`date +%H:%M:%S -d" 1... (1 Reply)
Discussion started by: Jayaraman
1 Replies

3. Shell Programming and Scripting

Grep 'error' between two timestamps

Hi, Need to grep for a error in a log file but between two timestamps / patterns example: in the below log file if the given timestamps are 14:00 to 15:00 and m greping for error only error3 should come in the output. pls note that apart from timestamps printed, the log file has no... (2 Replies)
Discussion started by: amicableperson
2 Replies

4. Shell Programming and Scripting

Help with touch and timestamps

Hello fellow Unix geeks, I have been given a very urgent assignment in my office on writing a particular Shell script but I'm very much new to it.I would appreciate any help from you on solving this problem--which might seem very trivial to you. The Unix flavour is a Sun Solaris one..(not... (6 Replies)
Discussion started by: Digjoy83
6 Replies

5. UNIX for Dummies Questions & Answers

Compare 2 timestamps

Hi, i have current timestamp, lets say "12:02:45" in an variable (var1) and another timestamp "08:30:00" fetched from table in another variable2 (var2). How do i compare 2 timestamps in unix shell scripting. if var 1 > var 2 then echo message. Thanks in advance. (3 Replies)
Discussion started by: prasannarajesh
3 Replies

6. Shell Programming and Scripting

Compare Timestamps

Hi! Long time reader first time registered user and poster. I've picked up some times and tricks and I'm at a dead end... I've parsed a log file for duplicates and printed only the two fields I need (duplicate entry and time stamp). My question is, with this output, how would I script... (2 Replies)
Discussion started by: rexpokinghorn
2 Replies

7. Shell Programming and Scripting

timestamps

Hello! I have the following problem. I read a file using perl, each line of this file has the fllowing format. 14/4/2008 8:42:03 πμ|10800|306973223399|4917622951117|1||1259|1|126|492|433||19774859454$ Th first field is the timestamp and the second field is the offset in seconds. How can... (1 Reply)
Discussion started by: chriss_58
1 Replies

8. UNIX for Advanced & Expert Users

merging multiple timestamps into one

Here is a problem that involves looping: - I have multiple files with same name but different timestamps: e.g test20080226144525.txt, test20080227144525.txt (can be more than two files). - I want to take the collection of these files (e.g test*) and append all its contents... (2 Replies)
Discussion started by: ChicagoBlues
2 Replies

9. Solaris

Difference between two timestamps

I'm writting a script to find the difference between two timestamp. One field i get on delivery time of the file like 07:17 AM and other is my SLA time 06:30 AM I need to find the difference between these two time (time exceeded to meet SLA). Need some suggestions. (8 Replies)
Discussion started by: raman1605
8 Replies

10. UNIX for Dummies Questions & Answers

Unix timestamps

Can someone help me with a Unix or perl script to convert the unix timestamps to human readable format? Any help will be highly appreciated... (3 Replies)
Discussion started by: hamsasal
3 Replies
Login or Register to Ask a Question