Visit The New, Modern Unix Linux Community


Date time difference in UNIX shell script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Date time difference in UNIX shell script
# 1  
Date time difference in UNIX shell script

There are 2 dates,

Code:
Tue Oct  1 13:40:19 2013

Sun Sept 30 10:26:23 2013

I have multiple dates like the above one. How do I calculate the date time difference and display in another column in Shell script. Please help.
# 2  
If your date command supports it, you can subtract the epoch of one from the other:

(not 100% tested, but something like...)
Code:
# E1=$(date '+%s' -d 'Tue Oct  1 13:40:19 2013')
# E2=$(date '+%s' -d 'Sun Sept 30 10:26:23 2013')
# echo $((E1 - E2))
98036
# DAYS=$(echo "$((E1-E2))/86400"|bc)
# HOURS=$(echo "$((E1-E2-86400*$DAYS))/3600"|bc)
# MINS=$(echo "$((E1-E2-86400*$DAYS-3600*$HOURS))/60"|bc)
# echo $DAYS $HOURS $MINS
1 3 13

(you can do this without bc, if you don't mind all the brackets...)
Code:
# DAYS=$(((E1-E2)/86400))
# HOURS=$((((E1-E2)-(86400*$DAYS))/3600))
# MINS=$((((E1-E2)-(86400*$DAYS)-(3600*$HOURS))/60))
# echo $DAYS $HOURS $MINS
1 3 13

Note: You should always state which OS you are using if it's not obvious from your question!
# 3  
Date time difference in UNIX shell script

I am currently using HP-UX B.11.11 as my O/S.

---------- Post updated at 04:27 PM ---------- Previous update was at 04:23 PM ----------

And 1 more thing.

Code:
date -d

doesn't work in my HP-UX system.
# 4  
There is no portable way to do it using POSIX shell scripting.

A portable solution would use a simple C code.

Otherwise, python, java, perl and others would allow to do it.

Previous Thread | Next Thread
Thread Tools Search this Thread
Search this Thread:
Advanced Search

Test Your Knowledge in Computers #524
Difficulty: Medium
The ASCII table was designed to enforce a lexicographic ordering: letters are in alphabetic order, uppercase precede lowercase versions, and numbers come after both.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Date / Time difference in shell script

Request ID GMDCOMTM GMDRRSTIME GMDRESTIME <36812986> : : :I want to display the date -time difference in other fields. Above I have given for only 1 record. I want to calculate for all the records. (GMCOMTM - GMDRRSTM) ,(GMDRRSTM-GMDRESTM) and... (5 Replies)
Discussion started by: ghosh_tanmoy
5 Replies

2. Shell Programming and Scripting

Date / Time difference in shell script

================================================================================ Request ID GMDCOM TIME GMDRRS TIME COM-RRS ================================================================================ <36812974> Tue Oct 1 13:32:40 2013 Tue Oct 1 20:36:42 2013... (1 Reply)
Discussion started by: ghosh_tanmoy
1 Replies

3. UNIX for Dummies Questions & Answers

Shell script - getting Time difference using awk

Hi..I have the data in a file like in this format, and I need the output time difference in seconds by using awk command. Start date/time and end date/time given in column 2,3 & 4,5. Please assist how to write shell script. File1.txt JOB1 10/09/2013 17:42:16 10/09/2013 17:43:46 SU 6202685/1... (4 Replies)
Discussion started by: mprithvi
4 Replies

4. Shell Programming and Scripting

Get the time difference between two consecutive line in UNIX perl script

Hi All :o, I have some log files which contains these informations: 2013-04-24 09:11:34.018 INFO XXXXXXXXXXXX 2013-04-24 09:11:34.029 INFO YYYYYYYYYYYY 2013-04-24 09:11:34.039 INFO ZZZZZZZZZZZZZZZ 2013-04-24 09:12:21.295 INFO TTTTTTTTTTTTTTT 2013-04-24 09:12:21.489 INFO... (3 Replies)
Discussion started by: shariquehabib
3 Replies

5. Shell Programming and Scripting

Adding time to date time in UNIX shell scipting

I needed some help in adding a duration (in seconds) to a start time (in hhmmss format) and a start date (in mmddyy format) in order to get an end date and end time. The concept of a leap year is also to be considered while incrementing the day. The code/ function that I have formed so far is as... (3 Replies)
Discussion started by: codehelp04
3 Replies

6. Shell Programming and Scripting

Difference Time Unix Shell

I have 2 variables MTIME="Jan_2_2012_23:55:49" SCH_TIME="Jan_03_2012_00:32:28" I want to find the time taken (in seconds) between MTIME and SCH_TIME. Is there any way by which this can be done in Unix Shell Script? (4 Replies)
Discussion started by: ankitncr
4 Replies

7. Shell Programming and Scripting

Date and time difference

I have start and finish date in the following format - Start Date: 5/21/2010 9:14:00 AM End Date : 5/24/2010 7:23:00 AM I need to get the time difference in the following format :mm or . Any help would be really appreciated. Thank you! (3 Replies)
Discussion started by: randev
3 Replies

8. Shell Programming and Scripting

Date and time difference

Hi, Below is the backup file name (includes date & time) : exp_trx_tables_18_Oct_2010_10_59_00.dmp Extracted date and time from the file name as below using the below "awk"command: date 18-Oct-2010 and time 10:59:00 echo "$fname" | awk -F"_" '{printf "Records will be restored as on... (1 Reply)
Discussion started by: milink
1 Replies

9. UNIX for Dummies Questions & Answers

Date and time difference

Hi, I am starting a process at 9 pm today and want to exit the process by 5am, the next day. Every day at 9pm the shell script will be invoked by autosys. But how can i monitor in my script for 5 am and stop the process ? there may be a case where the script can start at 4.59 am and... (4 Replies)
Discussion started by: risshanth
4 Replies

10. AIX

Difference between writing Unix Shell script and AIX Shell Scripts

Hi, Please give me the detailed Differences between writing Unix Shell script and AIX Shell Scripts. Thanks in advance..... (0 Replies)
Discussion started by: haroonec
0 Replies

Featured Tech Videos