Sponsored Content
Top Forums Shell Programming and Scripting How to compare the time in different format from a file? Post 302748651 by Don Cragun on Wednesday 26th of December 2012 01:08:11 PM
Old 12-26-2012
Quote:
Originally Posted by manas_ranjan
Hey thanks, this is exactly what I was looking for......but I have an issue if I write this same piece of awk to a script it's throwing input file read error. but if I do this same from command line no issue at all. in script and command line I'm using same input file but not sure why this awk throws input file read error in script while not thru command line.
I'm not sure what you mean by
Quote:
write this same piece of awk to a script
or by
Quote:
it's throwing input file read error
.

If you save the code I provided in a file named compare_time,
change /bin/ksh in #!/bin/ksh to be the absolute pathname of ksh on your system, run the command:
Code:
chmod +x compare_time

and then run the command:
Code:
./compare_time

it should work exactly like it works if you paste the script into an interactive Korn shell.

If you mean that you want to put the script into a file that can be used with awk's -f option, then create a file named compare_time.awk containing the following:
Code:
BEGIN { FS = "  "
}
{
        if(split($1, nf, /[:.]/) != 4) {
                printf "Time stamp split for \"%s\" on line %d failed\n", $1, NR
                exit 1
        }
        if(NR > 1) {
                usec = nf[4] - lf[4]
                sec = nf[3] - lf[3]
                min = nf[2] - lf[2]
                hr = nf[1] - lf[1]
                if(usec < 0) {usec += 1000000; sec--}
                if(sec < 0) {sec += 60; min--}
                if(min < 0) {min += 60; hr--}
                if(hr < 0) hr += 24
                printf "%2d:%02d:%02d.%06d\n", hr, min, sec, usec
        }
        for(i = 1; i <= 4; i++) lf[i] = nf[i]
        printf "%20s: ", $2
}
END {   printf "unknown (no end time stamp)\n"
}

and then use it as follows:
Code:
awk -f compare_time.awk input_filename

If these suggestions don't take care of the issue, please provide the exact message or messages being written by awk that tell you that awk is throwing an input file read error, and provide the exact command line that you're using to invoke awk. (As mentioned in an earlier message, if you're running this on a Solaris system, use /usr/xpg4/bin/awk or nawk instead of awk.)
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Compare file time

i need to write script where I need to keep monitoring a files timestamp, if it changes, I need to run another abc.sh script. I am thinking I can save file's current timestamp in another file or enviornment variable and after 10 min compare the files timestamp with the original timestamp. If... (1 Reply)
Discussion started by: pdr302
1 Replies

2. UNIX for Dummies Questions & Answers

Need to get 4 Hrs back time and compare with successive time

Hi all, I am working on a script in which i need to get 4 hrs back time from the current time which i got from this perl function : `perl -e 'print localtime(time() - 14400) . "\n"'` now i need to get this in a loop and increment that time by 15 minutes i.e i=900(=15minutes) `perl... (2 Replies)
Discussion started by: maanik85
2 Replies

3. 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

4. Shell Programming and Scripting

How to compare the mtime of a file with the current time?

Hi, I wondered if we could do this with shell script? How to compare the mtime of a file with the current time and check whether its less than 24 hours. Thanks.:b: (2 Replies)
Discussion started by: Krsh
2 Replies

5. Shell Programming and Scripting

Compare Last Modified Time across Time Zone

Hi, I'm new to shell script programming, I only have Java programming background. I'm writing a shell script to do file synchronization between 2 machines that located at different time zone area. Both machine were set its time zone according to its geographical location (Eg: server is at... (1 Reply)
Discussion started by: python
1 Replies

6. Shell Programming and Scripting

Compare current time to timestamp on a file

I'm trying to compare 2 dates between current time and the timestamp on a file. The date format is mmdd Both return Apr 1 but when using if statement line 11: Apr 1: command not found error is returned #!/bin/sh log="DateLog" Current_Date=`date +%b%e` Filepmdate=`ls -l /file.txt |... (1 Reply)
Discussion started by: cillmor
1 Replies

7. Shell Programming and Scripting

Match list of strings in File A and compare with File B, C and write to a output file in CSV format

Hi Friends, I'm a great fan of this forum... it has helped me tone my skills in shell scripting. I have a challenge here, which I'm sure you guys would help me in achieving... File A has a list of job ids and I need to compare this with the File B (*.log) and File C (extend *.log) and copy... (6 Replies)
Discussion started by: asnandhakumar
6 Replies

8. Shell Programming and Scripting

Long list file display different time format.

Hi Gurus, I have some weird issue. when using ls -l the result shows different time format: -rw-r--r-- 1 abc gourp1 3032605576 Jun 14 2013 abc -rw-rw-r-- 1 abc gourp1 1689948832 Aug 10 06:22 abc one display 2013 which is year; another one displays 06:22 which is time. ... (4 Replies)
Discussion started by: ken6503
4 Replies

9. Shell Programming and Scripting

Compare actual files with format

Hi, I have database table let say t_filenames which stores filenames and date_format in two columns. e.g. ABCD_TV_YYYYMMDD.txt YYYYMMDD ABCD_MOUSE_YYYYMMDDHHMISS.txt YYYYMMDDHHMISS Actual files are available in a directory (say /tmp), actual files are with... (2 Replies)
Discussion started by: pointers1234
2 Replies

10. Shell Programming and Scripting

Calculate Time diff in milli milliseconds(Time format : HH:MM:SS,NNN)

Hi All, I have one file which contains time for request and response. I want to calculate time difference in milliseconds for each line. This file can contain 10K lines. Sample file with 4 lines. for first line. Request Time: 15:23:45,255 Response Time: 15:23:45,258 Time diff... (6 Replies)
Discussion started by: Raza Ali
6 Replies
All times are GMT -4. The time now is 10:05 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy