Top Forums Shell Programming and Scripting Calculate Time diff in milli milliseconds(Time format : HH:MM:SS,NNN) Post 303014141 by Don Cragun on Monday 5th of March 2018 09:14:27 PM
Quote:
Originally Posted by abdulbadii
Code:
$ cat time
15:23:45,255 WARN <NTS>  RouteRequest : 518318 ### 15:23:45,258 CRIT <ISUP> RouteResponse : 518318

Must set local decimal character / delimiter to be ',' and thousand delimiter to be '.'

Code:
$ awk -N 'BEGIN {FPAT="[0-9]+,[0-9]+ "} {print $0 " || "((($2-$1)*1000))}' time

otherwise
Code:
$ awk 'BEGIN {FPAT="[0-9]+,[0-9]+ "} {a=$1;b=$2;sub(/,/,".",a);sub(/,/,".",b); print $0 " || "(((b-a)*1000))}' time

Hi abdulbadii,
When I try your code with your sample input, your first suggestion produces the output:
Code:
awk: unknown option -N ignored

15:23:45,255 WARN <NTS>  RouteRequest : 518318 ### 15:23:45,258 CRIT <ISUP> RouteResponse : 518318 || -15000

and your second suggestion produces the output:
Code:
15:23:45,255 WARN <NTS>  RouteRequest : 518318 ### 15:23:45,258 CRIT <ISUP> RouteResponse : 518318 || -15000

which is exactly what I would expect when subtracting a string starting with 15: from the string WARN and multiplying the result by 1000.

If you had used $8 and $1 (instead of $2 and $1) with an awk that conforms to the standards, your results would have been 1000 times the difference between the hours portions of the two timestamps. What system are you using where the above code produces the output requested by the person who started this thread?
 
Test Your Knowledge in Computers #698
Difficulty: Medium
"Homesteading the Noosphere" (abbreviated HtN) is an essay written by Eric S. Raymond about the social workings of proprietary, corporate software development.
True or False?

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

useing date or other time style utility to get milliseconds.

hello everyone. im sure someone has run into the problem of timestamping files and end up haveing 2 files with the same name thus over writeing one of them. In my application i am trying to get a timestamp w/ milliseconds but i am haveing no luck and finding an answer in the man pages. I know... (3 Replies)
Discussion started by: Optimus_P
3 Replies

2. Programming

C time in milliseconds function.

I need a c function which return the time in: hour min sec and mil sec I am writing on unix os. (3 Replies)
Discussion started by: kamil
3 Replies

3. Shell Programming and Scripting

Convert milliseconds to standard time

hello, I have the uptime of the server showing as upTime=2427742050 How do I convert it to standard time. Thanks Chiru (1 Reply)
Discussion started by: chiru_h
1 Replies

4. Shell Programming and Scripting

time diff help

Input file: Tue Oct 21 12:56:35 2008 Started Tue Oct 21 12:56:39 2008 Completed Tue Oct 21 12:57:25 2008 Started Tue Oct 21 12:57:32 2008 Completed Tue Oct 21 12:58:12 2008 Started Tue Oct 21 12:58:50 2008 Completed Output required: Tue Oct 21 12:56:35 2008 Started Tue Oct 21... (2 Replies)
Discussion started by: uwork72
2 Replies

5. Shell Programming and Scripting

Convert Epoch time format to normal date time format in the same file

I have a file named "suspected" with series of line like these : {'protocol': 17, 'service': 'BitTorrent KRPC', 'server': '219.78.120.166', 'client_port': 52044, 'client': '10.64.68.44', 'server_port': 8291, 'time': 1226506312L, 'serverhostname': ''} {'protocol': 17, 'service': 'BitTorrent... (3 Replies)
Discussion started by: rk4k
3 Replies

6. Shell Programming and Scripting

Getting Time in MilliSeconds with Perl

I use something like this in perl to get the date and time: use Time::localtime; use Time::gmtime; $tm = gmtime; $time_str = sprintf "%04d-%02d-%02d %02d:%02d:%02d", $tm->year + 1900, $tm->mon + 1, $tm->mday, $tm->hour, $tm->min, $tm->sec; It gives me something like this: 2010-08-26... (1 Reply)
Discussion started by: lforum
1 Replies

7. Shell Programming and Scripting

How to calculate time difference between start and end time of a process!

Hello All, I have a problem calculating the time difference between start and end timings...! the timings are given by 24hr format.. Start Date : 08/05/10 12:55 End Date : 08/09/10 06:50 above values are in mm/dd/yy hh:mm format. Now the thing is, 7th(08/07/10) and... (16 Replies)
Discussion started by: smarty86
16 Replies

8. Shell Programming and Scripting

Calculate age of a file | calculate time difference

Hello, I'm trying to create a shell script (#!/bin/sh) which should tell me the age of a file in minutes... I have a process, which delivers me all 15 minutes a new file and I want to have a monitoring script, which sends me an email, if the present file is older than 20 minutes. To do... (10 Replies)
Discussion started by: worm
10 Replies

9. Shell Programming and Scripting

calculate time from a given format

Hi i have a file which consists of the time records in following format H:MM:SS.sss 0:00:09.249 0:00:00.102 0:00:00.105 0:00:08.499 0:00:08.499 0:00:06.980 0:00:04.249 0:00:05.749 0:00:00.108 0:00:00.107 0:00:03.014 0:00:00.000 I need to calculate their equivalent milliseconds... (3 Replies)
Discussion started by: vaibhavkorde
3 Replies

10. Solaris

Process execution time in milliseconds

Hey everyone, I'm coming from Linux where the top command gave me lots of process info (particularly CPU time in milliseconds) and I'm trying to find similar info in Solaris. So far I've looked at prstat and ps but neither give cpu time in milliseconds, both seem to have 1 second... (2 Replies)
Discussion started by: maniac_ie
2 Replies
All times are GMT -4. The time now is 05:11 AM.
Unix & Linux Forums Content Copyright 1993-2020. All Rights Reserved.
Privacy Policy