----- Original Message -----
From: "Brian K. White"
The one most usefull to me would be time since command start.
#!/usr/bin/awk -f BEGIN { S=systime() } { s=systime()-S m=0 h=0 d=0 if (s>=60) { m=s/60 ; s=s%60 } if (m>=60) { h=m/60 ; m=m%60 } if (h>=24) { d=h/24 ; h=h%24 } printf ("%04i:%02i:%02i:%02i: %s\n",d,h,m,s,$0) }
I tested the various rollover points like this: First, add something to the calculated seconds "s" to bring it close to a rollover point, after s=systime() and before anything that uses "s": s=systime()-S # s=s+58 # add 2 seconds before 1 minute to test minute rollover # s=s+3598 # add 2 seconds before 1 hour to test hour rollover s=s+86398 # add 2 seconds before 1 day to test day rollover m=0 h=0 d=0 if (s>=60) { m=s/60 ; s%=60 } if (m>=60) { h=m/60 ; m%=60 } if (h>=24) { d=h/24 ; h%=24 } printf ("%04i:%02i:%02i:%02i: %s\n",d,h,m,s,$0) Then echo/sleep/echo... (echo this ;sleep 1 ;echo is ;sleep 1 ;echo a ;sleep 1 ;echo test) |tscat unadulterated: 0000:00:00:00: this 0000:00:00:01: is 0000:00:00:02: a 0000:00:00:03: test one minute rollover: 0000:00:00:58: this 0000:00:00:59: is 0000:00:01:00: a 0000:00:01:01: test one hour rollover: 0000:00:59:58: this 0000:00:59:59: is 0000:01:00:00: a 0000:01:00:01: test one day rollover: 0000:23:59:58: this 0000:23:59:59: is 0001:00:00:00: a 0001:00:00:01: test -- Brian K. White brian@aljex.com http://www.myspace.com/KEYofR +++++[>+++[>+++++>+++++++<<-]<-]>>+.>.+++++.+++++++.-.[>+<---]>++. filePro BBx Linux SCO FreeBSD #callahans Satriani Filk! -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org