Minues four hours from time


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Minues four hours from time
# 1  
Old 01-13-2011
Minues four hours from time

Hi,

I am trying to design a script, which will monitor a log file, and it should dump all the rows that were logged between now and past four hours.

The date format within the logs is "2/Jan/2011:03:13:27". So I am using below command to substract four hours from the current time :


Code:
$ date +%d/%b/%Y:%H| awk -F":" '{ print $1 ":" ($2-4)}'
13/Jan/2011:8

It gives me "13/Jan/2011:8" , whereas i need it to be "13/Jan/2011:08".

Please let us know how can i accomplish this.

I did look within this link : https://www.unix.com/answers-frequent...rithmetic.html, but couldn't find a suitable answer.

TIA - John
# 2  
Old 01-13-2011
Code:
date '+%d/%b/%Y:%H' | awk -F: '{printf("%s:%02d\n",$1,$2-4)}'


Last edited by anurag.singh; 01-13-2011 at 02:23 PM..
# 3  
Old 01-13-2011
Anurag, I'm getting this output.

Code:
5$ date '+%d/%b/%Y:%H' | awk -F: '{printf("$s:%02d\n",$1,$2-4)}'
$s:00

# 4  
Old 01-13-2011
Should be %s, not $s
Corrected in earlier post.
# 5  
Old 01-13-2011
Thank You, it is working.

$s:%02d\n

Could you please illustrate why does this mean, so that i can utilize later on for other purpose.?
# 6  
Old 01-13-2011
Code:
printf("%s:%02d\n",$1,$2-4)

1st argument to printf is the format. %s to print $1 as string, %d is to print as integer where 02 is to padd ZERO on left if ($2-4) width is less than 2.
For more detail, Look at printf manual or other info available on internet.
This User Gave Thanks to anurag.singh For This Post:
# 7  
Old 01-13-2011
Thanks a lot !
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Add time hours

Gents, Is there the way to increase hours (+3) to the data with the format following. example JDhhmmss 335193508 input 335193508 335203508 335213508 335223508 335233508 output 335223508 335233508 336003508 336013508 (14 Replies)
Discussion started by: jiam912
14 Replies

2. Shell Programming and Scripting

Can anyone help me to print UNIX epoch time to days,hours,min,sec ?

I have unix epoch time 1441678454803, Can you please help me to print this time in below format ? DAY,HOUR,MIN,SEC Appreciate your help!!! Thanks, Prince (7 Replies)
Discussion started by: prince1987
7 Replies

3. Shell Programming and Scripting

Add or Subtract the hours,minutes or seconds in the the time variable

Hello All, I am working on script where I need to add hours,minutes or seconds in the time.Time is not the current but it could be future time.I thought I can store that time in variable and add hours.minutes or second but I am not able to add that in the time that is stores in a variable. Time... (9 Replies)
Discussion started by: anuragpgtgerman
9 Replies

4. Shell Programming and Scripting

awk : Search for text between two time frame (12 hours)

I have created the script to grep the errors from weblogic logs files and redirecting output to file.txt ...From file.txt I'm using awk command to collect the past 20 mins output...The script running from cron every 15 mins... The script working well... Now the challenges, I'm trying to use... (27 Replies)
Discussion started by: zenkarthi
27 Replies

5. Shell Programming and Scripting

Diff between two time in hours in last column

Dear All I want to diff between two time(FIRST 4 COLUMN) in hours in last column. Kindly help me for same. 2013-11-23 15:51:23 2013-11-23 12:20:06 BRC023 CG 2013-11-23 15:51:23 2013-11-23 12:20:08 BRC064CG 2013-11-23 15:51:23 2013-11-22 13:17:49 BLM003 NG 2013-11-23 15:51:23 2013-11-22... (9 Replies)
Discussion started by: jaydeep_sadaria
9 Replies

6. Shell Programming and Scripting

Log search and mail it if the log is updated before 24 hours from the current time

Hi , We have around 22 logs , each has different entries. I have to automate this using shell script. The ideas which am sharing is given below 1) We use only TAIL -100 <location and name of the log> Command to check the logs. 2) We want to check whether the log was updated before 24... (13 Replies)
Discussion started by: Kalaihari
13 Replies

7. UNIX for Dummies Questions & Answers

Execute crontab for every 4 hours and begin from current time

I want to add a crontab entry which should execute for every 4 hours and that 4 hours calculation should begin from the current time. Normally if I set the crontab entry like this, 00 */4 30 05 * root date >>/tmp/cronout The above will execute the date command for every 4 hours like... (7 Replies)
Discussion started by: Ganeshwari
7 Replies

8. UNIX for Dummies Questions & Answers

Calculating the Hours between two time values

Dear Folks, I want to calculate the elapsed hours between two time columns. I am using timestampdiff method for the same. I am able to get the value. But facing an issue of decimal values. For example the elapsed hours between 09:00:00 and 20:30:00 is coming as 11 instead of 11.5. I am using below... (1 Reply)
Discussion started by: dinesh1985
1 Replies

9. Shell Programming and Scripting

Process Time in hours or minutes only

Hi i want to print the time of a process in hours only..(or) in minutes only.Is there anyway to print the process such like that when i give the commnand like following #ps -eo pid,time PID TIME 412 01:49:32 481 00:03 it shows in HH:MM:SS format: Could anyone... (1 Reply)
Discussion started by: srikanthg
1 Replies

10. UNIX for Dummies Questions & Answers

capturing the time stamp to get hours

Hi All, I am working on a korn shell script. I have a problem.i am calculating the next 27 hours from the time stamp. say TSTAMP=20060724000000 if i add 27 hours to the above time stamp, i will get 20060724143000 this is the code: YEAR=`echo $TSTAMP | awk... (0 Replies)
Discussion started by: pavan_test
0 Replies
Login or Register to Ask a Question