Get lines in 5 seconds


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Get lines in 5 seconds
# 1  
Old 06-15-2005
Error Get lines in 5 seconds

Hello everybody, how i can get how many lines are writed in a file in the last 5 seconds?

For ezample i have 'file1' that is filled by a process automatically and i neet to know how many lines with the word 'EXACTO' were filled the last 5 seconds, can somebody help me?

I try with:

Code:
tail -f file1 | grep EXACTO > file2

but it just copy the last files to 'file2' but not in the last 5 seconds, that have sence? please your help.

Lestat
# 2  
Old 06-15-2005
tail -f -s5 ?
# 3  
Old 06-15-2005
try ...

Code:
currcnt=0
oldcnt=0
while true
do
    currcnt=$(wc -l file1 | awk '{print $1}')
    if [ $currcnt -ne $oldcnt ]
    then
        sed "1,${oldcnt}d" file1 | grep "EXACTO" >> file2
        oldcnt=$currcnt
    fi
    sleep 5
done

# 4  
Old 06-15-2005
pixelbeat it still dont work, 'tail -f -s5 file1 works' but not just 5 seconds, it works like 'tail -f file1'
# 5  
Old 06-15-2005
File writes do not always work the way you think they do.

Unless the process writing the file calls fflush() for every line or is using aio calls, the kernel accumulates file data in memory for a while, then writes a bunch of stuff all at once to the file. The bunch of stuff it decides to write may end somewhere in the middle of a line.

What this means is that you could wait for 20 seconds, while nothing is written to the file. Then during the 21st second, 8192 bytes of data is written to the file.
# 6  
Old 06-15-2005
but that doesn't preclude the op from checking every 5 seconds if he wished ...
# 7  
Old 06-15-2005
At first time i try to get whe num of lines actual, then the num of lines in 5 seconds then the difference between they, but in 'file1' i have thousand of lines and a 'wc -l file1' take to much time...

For Jim Mcnamara:
The file1 is filled in real time, so i dont have problem like that (i think)
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Sorting and wc -l w.r.t seconds

I have file with below data 00:00:00 00:00:00 00:00:00 00:00:01 00:00:01 00:00:01 00:00:01 00:00:01 00:02:01 00:02:01 00:02:01 so on till 23:59:59 I want count of seconds for each hour and minutes say for 00:00:00 its 3 and 00:00:01 its 5 and 00:02:01 its 3 and so on... (8 Replies)
Discussion started by: mirwasim
8 Replies

2. Shell Programming and Scripting

datetime difference in seconds

Hi, I'm trying to find processing time of my script. Please can someone give me the commands to get the start/end time in "dd-mm-yyyy hh:mm:ss" and the differnce in seconds. Thanks! (5 Replies)
Discussion started by: dvah
5 Replies

3. UNIX for Dummies Questions & Answers

Number of leap seconds

Is there a function call in std library or unit command that returns the number of current leap seconds? GG (4 Replies)
Discussion started by: NAVTime
4 Replies

4. Shell Programming and Scripting

How to delay the process for few seconds

Hi, In my shell script, (as per the requirement), I am creating few files, and the processes are launched parallelly . (by using "&" at the end of the command line). As per the logic, I need to remove these files as well, after creating. But, the problem is, due to parallel processing,... (3 Replies)
Discussion started by: jitendriya.dash
3 Replies

5. Shell Programming and Scripting

Convert Seconds to hh:mm:ss

Hi All I need to convert a number of fields in a record from seconds to hh:mm:ss ( or possibly hhh:mm:ss ). I'm guessing awk is the way to go . File has multiple records and each record contains 101 fields - can awk handle that ? The seconds values will be in fields 3 - 101 and could be 0. ... (4 Replies)
Discussion started by: Mudshark
4 Replies

6. HP-UX

Ticks in seconds.

Hello all, Is there any thumb rule or aproximation of the equivalence in second of one tick? Thank you in advance. (1 Reply)
Discussion started by: mig28mx
1 Replies

7. UNIX for Advanced & Expert Users

Time Difference in seconds

It is required to calculate time difference in seconds between epoch time (19700101 00:00:00) and any given date time (e.g. 20010214 14:30:30). Is there any command in unix to get it? Thanks in adv. (1 Reply)
Discussion started by: k_bijitesh
1 Replies

8. UNIX for Dummies Questions & Answers

seconds to hh:mm:ss

Any sleek way to convert seconds to hh:mm:ss format . I know it can be done by mod and divide . Looking for a one liner if possible . Example 3600 seconds = 01:00:00 3601 seconds = 01:00:01 (2 Replies)
Discussion started by: akrathi
2 Replies

9. UNIX for Advanced & Expert Users

how to get number of seconds

How do I get the number of seconds since 1970, within a script, for the previous day at 23:59? I need this value to pass into a sql statement to cleanup records older than the previous day at midnight. It will be automated via cron so no hard coding allowed. Thanks! (2 Replies)
Discussion started by: captainzeb
2 Replies
Login or Register to Ask a Question