Substituting variable value in AWK /start/,/stop/


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Substituting variable value in AWK /start/,/stop/
# 1  
Old 04-15-2009
Substituting variable value in AWK /start/,/stop/

Hi all u brilient people on the forum...
I am trying to call the variable value in awk command for search pattern /start/,/stop/ but i am nt able to do this ....
wat i did is ..i have created two variable YESTERDAY and TODAY and passed the y'day n 2'days dates in it...like this

Code:
YESTERDAY=`TZ=aaa24 date +"%b %d"`
TODAY=`date +"%b %d"`

now am trying call this variable value in awk command which will search the content of the file between Y'days and 2days date and redirect the output to another file ....As this

Code:
awk '/"$YESTERDAY {print}"/,/"$TODAY {print}"/' $HOME/alert_out.log > $HOME/alert_work.log

bt its not working.....Smilie
Can anybody help me out How can i acheive this??
Thanks in advance...Smilie
# 2  
Old 04-15-2009
to avoid the troublesome quotes, use -v option of awk to pass in variables from the shell.
# 3  
Old 04-15-2009
what is your pattern??
is it $YESTERDAY,$TODAY ?
you can directly use double quotes instead the single ones in the whole command.
# 4  
Old 04-16-2009
10x...4 reply to my thread bt
How can i use -v option in awk for /start/,/stop/ search option...

Kanchan
Also my search pattern is the date which will retrieve by the variable which i was defined above....
It has to search the result based on the Yesterdays and todays date.

I was already tried to put in double qoute bt no luck...
# 5  
Old 04-16-2009
Quote:
Originally Posted by whomi
10x...4 reply to my thread bt
How can i use -v option in awk for /start/,/stop/ search option...
Code:
a="pattern1"
awk -v var=$a '$0~var,/pattern2/' file

# 6  
Old 04-16-2009
10x 4 reply...
bt still its not working..
I think u ddnt undersand my requirement.

Here i want to retrieve the value based on the YESTERDAYS Date and TODAYS date and my script will redirect the content of the file Between yesterdays date and todays date. The file on which i am taking the search is having the daily update mentioning the date format e.g say Apr 16 ,Apr 15,Apr 14 like that. so if i pass the value Apr 15 in place of YESTERDAY variable and Apr 16 for TODAYS then it has to give the content of the file between these two dates.

i am using awk command of search string '/START/,/STOP/' where START if 4 YESTERDAY and STOP 4 TODAY... and the syntax which awk command use for this kind of search is shown above in colored..
So here i have already defined the variable YESTERDAY and TODAY...
My problem is how to pass the value for both the variable.....

My code is some what like this

Code:
YESTERDAY=`TZ=aaa24 date +"%b %d"`
TODAY=`date +"%b %d"`
echo $TODAY
echo $YESTERDAY
awk '/"$YESTERDAY {print}"/,/"$TODAY {print}"/' $HOME/alert_out.log >> $HOME/alert_work.log
 
but here its not passing the value 4 both variables though its still creating the file $HOME/alert_work.log but with zeor content.

# 7  
Old 04-16-2009
the syntax for your awk statement is wrong. I have already showed you how you can pass variables to awk from shell using an example.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

getting error while substituting variable using sed..

I am using script for substitute one variable with another variable like below... below code works fine... sed 's/'$sub_fun'/'$To_sub'/g' But when i run the same code from the script getting below errors.. sed: -e expression #1, char 7: unterminated `s' command please help....... (2 Replies)
Discussion started by: pamu
2 Replies

2. Shell Programming and Scripting

Trouble with sed and substituting a string with special characters in variable

Hey guys, I know that title is a mouthful - I'll try to better explain my struggles a little better... What I'm trying to do is: 1. Query a db and output to a file, a list of column data. 2. Then, for each line in this file, repeat these values but wrap them with: ITEM{ ... (3 Replies)
Discussion started by: ampsys
3 Replies

3. Shell Programming and Scripting

Substituting a shell variable in sed

Hi guys, I'm trying to figure out how to use a shell variable inside my sed command. I just want to remove a certain part of a path. I've tried three different combinations and none of them work. Here are the three combinations: echo $file | sed 's/'$test'//' echo $file | sed "s/$test//"... (7 Replies)
Discussion started by: chu816
7 Replies

4. UNIX for Dummies Questions & Answers

Variable is not substituting values

Hi All, OS HPUX 11.11 I am using following script to take controlfile backup. I have used SID variable to hold "ffin1" value, which I again subsitute in "'/db/ffin1/home/oraffin1/$SID_$wdate.ctl'" command. Well, after running this, SID variable does not subsittue it's value, while wdate... (6 Replies)
Discussion started by: alok.behria
6 Replies

5. UNIX for Dummies Questions & Answers

substituting variable value in AWK

Hi All, my requirement is as below. I need to replace a value in a particular column with a substitution variable(date value) and modified value of the current column value in the same position. for ex. i have a record like 02;aaaa;bbbbb;cccccc;dddddd;123456789;hhhhh;12hs;asdf ;... (3 Replies)
Discussion started by: ganesh_248
3 Replies

6. UNIX for Dummies Questions & Answers

Stop/Start vs. Restart

Is there any functional difference between: issuing separate stop/start commands like this; super (handler) (instance) stop super (handler) (instance) start versus issuing a single recycle command like this; super (handler) (instance) restart (3 Replies)
Discussion started by: Newbix
3 Replies

7. Shell Programming and Scripting

Servers Start and Stop

HI I am using below code to start and stop servers but it is not working ,how to run the script please suggest me ,if any errors in the script please let me know. #!/bin/bash IMS_START="/Webserver/AppServer/bin/startServer.sh" IMS_STOP="/Webserver/AppServer/bin/stopServer.sh" case "$1" in ... (1 Reply)
Discussion started by: RG18173
1 Replies

8. Shell Programming and Scripting

Substituting with value of variable in Sed

Hi, I have a program in which i have to substitute a TAG in a file with the value of a variable. Code Snippet: ---------------- myvar=1234 sed 's/_TAG_/$myvar/' infile outfile When I run this command, the _TAG_ in the "infile" is substituted with "$myvar" but NOT the value "1234"... (1 Reply)
Discussion started by: jyotipg
1 Replies

9. Shell Programming and Scripting

Substituting variable with current time

Hi all I have a script as follows :- #!/usr/bin/ksh IDT=`date +"%OH%M%S"` while true do echo ${IDT} sleep 1 done I need the time to show me the current runtime value for the time, however this returns the time as at the start of the script. Any ideas. Thanks JH (4 Replies)
Discussion started by: jhansrod
4 Replies

10. UNIX for Dummies Questions & Answers

Start/Stop Script

I'm a newbie to the Unix world Help! I have to maintain a host of Sybase database servers sitting on Unix Sun Solaris 8...I've been tasked with finding/creating a way to auto start/stop Unix via unix commands, specifically when the Unix servers need to be restarted we want Sybase to start... (2 Replies)
Discussion started by: jjv1
2 Replies
Login or Register to Ask a Question