Sponsored Content
Top Forums Shell Programming and Scripting grep variables nested within grep Post 302440949 by zaxxon on Thursday 29th of July 2010 02:59:09 AM
Old 07-29-2010
Some general things to note:
  • There is no need to cat files via pipe into other commands when they can take files as parameter themselves. You save a command and for time critical tasks you might want to spare all out you don't really need.
  • awk can "grep" too. It is one of it's easiest jobs to match patterns. You could write all those greps with one awk.
  • If not enclosed by single quotes, a variable will be substituted by the shell. There is no need to write `echo $VAR` to use the variables content as pattern.

For the problem that the content of your variable is not being passed, you should make sure 1st, that the content of the variable is the one you expect, before you pass it and if the grep/awk can match anything with this pattern.
A simple echo in the line after the declaration of the variable would be sufficient to check it out:

Code:
...
Thread_serialnum_time=...
echo $Thread_serialnum_time
...

Here an example how you could write such a lengthy pipe column instead:
Code:
# original
outtime=$(cat masterlogfile.txt | grep 'Leaving callExitsIn 2'| grep `echo $Thread_count` | grep `echo $Thread_serialnum_time` | awk  '{ print $2 }')

# how it could look like with just 1 command
outtime=$(awk '/Leaving callExitsIn 2/ && /'${Thread_count}'/ && /'${Thread_serialnum_time}'/ {print $2}' masterlogfile.txt)

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Using grep with variables

Being new to shell scripting I hope this question isn't too elementary but here goes. I run a grep statement - grep 'sqr' sqrmodule.par and the grep statement returns correctly the information that I'm looking for. Now I want to take the output from the grep statement and load it into a... (2 Replies)
Discussion started by: gettingstarted
2 Replies

2. Shell Programming and Scripting

awk as grep with variables

i have such awk working fine but how to use variable instead of strings awk '/asdasd.*asda.*asdasd/' file2.txt This is not working: awk '/${a}.*${b}.*${c}/' file2.txt Thanks & regards Peter (7 Replies)
Discussion started by: pp56825
7 Replies

3. Shell Programming and Scripting

MEM=`ps v $PPID| grep -i db2 | grep -v grep| awk '{ if ( $7 ~ " " ) { print 0 } else

Hi Guys, I need to set the value of $7 to zero in case $7 is NULL. I've tried the below command but doesn't work. Any ideas. thanks guys. MEM=`ps v $PPID| grep -i db2 | grep -v grep| awk '{ if ( $7 ~ " " ) { print 0 } else { print $7}}' ` Harby. (4 Replies)
Discussion started by: hariza
4 Replies

4. Shell Programming and Scripting

How to use variables/array in grep command

Hi, I have a reqmt as i have some values in array and I want to search each value in a file by grep command. Here goes my scripting: #!/bin/ksh set -A ArrayA CENTER LEFT RIGHT echo "ArrayA contains: ${ArrayAİ*¨}" grep -e "${ArrayAİ*¨}" filename.txt The above grep is working for... (4 Replies)
Discussion started by: prashant43
4 Replies

5. Programming

Grep with C variables.

Hi all, I have a problem, I need a grep -v but, the patterns of the grep should be C variables. Example: char var1="h"; char var2="o"; char var3="d"; system("grep -v \"var1 var2 var3\" file.txt"); ---- ---- ---- I try it but... Can u help me? Thanks beforehand P.S. Sorry for... (4 Replies)
Discussion started by: AbelBs
4 Replies

6. Shell Programming and Scripting

grep and variables ?

I would like to know if grep can extract the following requirement. I have the folllowing piece of SQL in a file and need to grep the FROM part. mp db-ter-fast-export C100_Input_Target_Table__table_ "${DB}"'/teradata.dbc' -select 'SELECT UPPER(trim(proj_id)) as proj_id, latest_job_id,... (9 Replies)
Discussion started by: anduzzi
9 Replies

7. Shell Programming and Scripting

Using awk or grep with Variables in a script

Good day Geeks, Am having an issue with using variables in a rather simple script, the script is as follows: #!/bin/bash ### Script written by Adigun Gbenga ### Date: April 28, 2012 array=( 1 2 3 4 5 29 7 8 9... (6 Replies)
Discussion started by: infinitydon
6 Replies

8. Homework & Coursework Questions

Grep, Variables, IF statements... Fun

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: The issue I am having is part of a validation problem. My script will validate 3 or 4 parameters entered by the... (4 Replies)
Discussion started by: JonLaberge
4 Replies

9. Shell Programming and Scripting

Inconsistent `ps -eaf -o args | grep -i sfs_pcard_load_file.ksh | grep -v grep | wc -l`

i have this line of code that looks for the same file if it is currently running and returns the count. `ps -eaf -o args | grep -i sfs_pcard_load_file.ksh | grep -v grep | wc -l` basically it is assigned to a variable ISRUNNING=`ps -eaf -o args | grep -i sfs_pcard_load_file.ksh |... (6 Replies)
Discussion started by: wtolentino
6 Replies

10. Shell Programming and Scripting

Using $variables in grep

Hi, I'm currently trying to use variables in grep on my script. Printing the variable via echo works fine. Also, if I hard coded the date of the appointment it works just fine. But, if I try to use the $DATE as an argument in grep it doesn't do anything. #!/bin/bash DATE=${2}/${3}/${1} ... (6 Replies)
Discussion started by: nuclearpenguin
6 Replies
ZGREP(1)						      General Commands Manual							  ZGREP(1)

NAME
zgrep - search possibly compressed files for a regular expression SYNOPSIS
zgrep [ grep_options ] [ -e ] pattern filename... DESCRIPTION
Zgrep invokes grep on compressed or gzipped files. These grep options will cause zgrep to terminate with an error code: (-[drRzZ]|--di*|--exc*|--inc*|--rec*|--nu*). All other options specified are passed directly to grep. If no file is specified, then the standard input is decompressed if necessary and fed to grep. Otherwise the given files are uncompressed if necessary and fed to grep. If the GREP environment variable is set, zgrep uses it as the grep program to be invoked. EXIT CODE
2 - An option that is not supported was specified. AUTHOR
Charles Levert (charles@comm.polymtl.ca) SEE ALSO
grep(1), gzexe(1), gzip(1), zdiff(1), zforce(1), zmore(1), znew(1) ZGREP(1)
All times are GMT -4. The time now is 04:02 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy