How to store the value of grep in a variable


 
Thread Tools Search this Thread
Special Forums UNIX Desktop Questions & Answers How to store the value of grep in a variable
# 1  
Old 05-11-2012
How to store the value of grep in a variable

Hi ,

I was trying to store the value of a grep command to store in a variable so i can use it somewhere else in my script but i am getting error, i am using bash shell in linux:

Code:
var= `grep -n "$DATE" testfile.log | head -n 1 | sed -n 's/^\([0-9]*\)[:].*/\1/p`
echo "$var"

I get the error: unexpected EOF while looking for matching `''

If I just launch using grep, it works fine.

Also I tried the below, but doesn't print aything:

Code:
var= $(grep -n "$DATE" testfile.log | head -n 1 | sed -n 's/^\([0-9]*\)[:].*/\1/p)
echo "$var"

Can some one else tell what i am doing wrong, regards.

Last edited by methyl; 05-11-2012 at 11:23 AM.. Reason: please use code tags
# 2  
Old 05-11-2012
Your sed command is missing the closing single quote.

I would also suggest using the "$( )" format for command substitution instead of backquotes, unless you need to remain compatible with an older shell that does not support that syntax. It handles nested command substitution commands
much cleaner:
Code:
var=$(grep -n "$DATE" testfile.log | head -n 1 | sed -n 's/^\([0-9]*\)[:].*/\1/p')

Which is easier to understand, this one where you have to escape the nested backquotes:
Code:
x=`ls  \`find . -name \*.dat -print 2>/dev/null\``

Or this one, where you don't?
Code:
x=$(ls  $(find . -name \*.dat -print 2>/dev/null))


Last edited by gary_w; 05-11-2012 at 11:01 AM.. Reason: Added command substitution example
# 3  
Old 05-11-2012
Thanks for the reply but after using
Code:
var= $(grep -n "$DATE" Activity.log | head -n 1 | sed -n 's/^\([0-9]*\)[:].*/\1/p')
echo "$var"

, i get command not found error and prints the value of the grep.
It still not printing the value of this command -
Code:
echo "$var"

so the value of grep is still not storing in the variable 'var'

Last edited by methyl; 05-11-2012 at 11:24 AM.. Reason: please use code tags
# 4  
Old 05-11-2012
Please show a sample input line from Activity.log and your output and verify the contents of your $DATE variable.

Please use code tags too, for readability.
# 5  
Old 05-11-2012
Quote:
var= $whatever
After using code tags, we can see every space character.
Look carefully at gary_w's post and then lose the space character after the equals sign.
Code:
var=$whatever

# 6  
Old 05-11-2012
Thanks gary_w and methyl, it worked after correcting the space, i am using space after "=" sign .
This User Gave Thanks to learninguser235 For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

I can't store value in the variable

!#bin/bash clear var= grep @gmail.com email.txt | wc -l echo $var echo $var exit 0 OUTPUT: 1000 _ _ Where _ represent space (no value or nothing) (4 Replies)
Discussion started by: Muhammad Rehan
4 Replies

2. Shell Programming and Scripting

How to store result of grep into a variable?

In a directory i have a file *output* whose contents are changing for every simulation. zgrep "trace file is" *output* | zgrep g o/p: trace file is Int_01.1352176388z4f56ec33.0.trace.gz I want to extract "Int_01.1352176388z4f56ec33.0.trace.gz" from the above result into a variable. i... (2 Replies)
Discussion started by: twistedpair
2 Replies

3. UNIX for Dummies Questions & Answers

How to grep and store in a file

Guys, I was wondering what command can be used to parse the "LaxOrdID" field into a separate file? These messages are in thousands and I need to perform a comparision. (6 Replies)
Discussion started by: DallasT
6 Replies

4. Shell Programming and Scripting

Not able to store command inside a shell variable, and run the variable

Hi, I am trying to do the following thing var='date' $var Above command substitutes date for and in turn runs the date command and i am getting the todays date value. I am trying to do the same thing as following, but facing some problems, unique_host_pro="sed -e ' /#/d'... (3 Replies)
Discussion started by: gvinayagam
3 Replies

5. Shell Programming and Scripting

Help in scripting, store value in variable

Hi all, I have a script in which i need to run a command like "/opt/dell/srvadmin/sbin/omreport about" and output will be something like Version : 6.3.0 Copyright : Copyright (C) xxx Inc. 1995-2010 All rights reserved. Company : xxx Inc. In this i need to save the version... (13 Replies)
Discussion started by: Renjesh
13 Replies

6. Shell Programming and Scripting

grep attribute value pair and store it a variable

Hi, I have a file contains attribute value pair like.. ..name=erick rollno=583.0 pass=recon.. From the above line, i need to grep for only "rollno" and store "rollno=583.0" in a variable. Pls suggest (6 Replies)
Discussion started by: skraja1982
6 Replies

7. UNIX for Dummies Questions & Answers

Using GREP/AWK to extract a number and store it as a variable

Hello, I have a question regarding the awk command. Here is the line I need to grep: 1 F= -.13250138E+03 E0= -.13249556E+03 d E =-.174650E-01 mag= 35.2157 Instead of displaying the number in red I would like to store it as a variable such as X. Is there a way to do this? Thanks for any... (3 Replies)
Discussion started by: modey3
3 Replies

8. Shell Programming and Scripting

how to store grep command in a Variable

I have a variable A echo $A 5060 I am exporting the value X,Y,Z and it id fetching right thing and When I run C=`${X} -l ${Y} ${Z} "trap '' INT;. ~/.profile >/dev/null 2>/dev/null; netstat -na | grep \$A`" here it is going to same directory and also running netstat -na | grep 5060 ... (4 Replies)
Discussion started by: madhusmita
4 Replies

9. Shell Programming and Scripting

Grep results to store in a shell variable

I have the results of a grep with -n store in a shell variable ie VAR=`grep -n -e 'PATTERN' file` How ever I am missing the line breaks in the variable , How do I store the resualts of grep with many lines in to a variables. I want the varable should be the sawmway as we do the grep grep... (3 Replies)
Discussion started by: jojan
3 Replies

10. Shell Programming and Scripting

grep and store

When i grep a file and store it in a file it is storing as a zero byte file any way to avoid that..... (6 Replies)
Discussion started by: arunkumar_mca
6 Replies
Login or Register to Ask a Question