Extracting a regex with awk


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Extracting a regex with awk
# 1  
Old 05-17-2009
Extracting a regex with awk

I have a regexp that I wish to match against every line of a file using awk.

But I do not want to substitute it or select the line.

I want to pull the matched text out and put it in a different file, line by line.

What is the correct awk usage to *extract* a regexp and put it in another file?
# 2  
Old 05-17-2009
cat file.text

A regular expression
can be used as a pattern
by enclosing it in slashes.
Then the regular expression

awk '/expression/ { print $0 }' file.text

A regular expression
Then the regular expression

You goal:

awk '/expression/ { print $0 }' file.text > file.text2
cat file.text2


A regular expression
Then the regular expression
# 3  
Old 05-17-2009
Or even forget awk and use grep:
Code:
$ grep expression inputfile > outputfile

# 4  
Old 05-17-2009
Pulling out the matched expression

The grep script pulls out all the *lines* with the matching expression.

I just want to pull out the subset of the text that matches the expression.

If the expression were /and/ and the line was "Here and now", I just want to pull out the "and" and put it on a line in the new file.

File01 has "Here and now" and File02 has "and" after the program runs.

Sorry for the bother.
# 5  
Old 05-17-2009
echo "Here and now" | awk '/and/ { print $2 }' > new.file

To assume to know that the /and/ is on the second column!
# 6  
Old 05-17-2009
Unfortunately, I don't know that the "and" is in the second column. That's the problem.
# 7  
Old 05-17-2009
A simple solution:

cat file
Here and now

cat file | sed 's/ /\n/g' | grep "and" > output_file.text
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Regex extracting location

I have location as line=/got/cpp/track/tmp/piy/p_tok.xml I need the path till tmp i.e. /got/cpp/track/tmp i tried test=${line%/)} and i am getting location till /got/cpp/track/tmp/piy Can anyone help me in correcting my regex (2 Replies)
Discussion started by: dreams619
2 Replies

2. Shell Programming and Scripting

Regex within IF statement in awk

Hello to all, I have: X="string 1-" Y="-string 2" Z="string 1-20-string 2"In the position of the number 20 could be different numbers, but I'm interest only when the number is 15, 20,45 or 70. I want to include an IF within an awk code with a regex in the following way. ... (12 Replies)
Discussion started by: Ophiuchus
12 Replies

3. Shell Programming and Scripting

wildcard in regex for awk

Hello I have a file like : 20120918000001413 | 1.17.163.89 | iSelfcare | MSISDN | N 20120918000001806 | 1.33.27.100 | iSelfcare | 5564 | N .... I want to extract all lines that have on 4th field (considering "|" the separator ) something other than just digits. I want to do this using a... (5 Replies)
Discussion started by: black_fender
5 Replies

4. Shell Programming and Scripting

awk equivalent of regex

Hi all, Can someone tell me what's the (g)awk equal of this simple regex to find ip addresses in urls: egrep "^http://{1,3}\.{1,3}\.{1,3}\.{1,3}(:{1,5})?/"Input: http://10.0.0.1/query.exe http://11y10x09w:80/howaboutme http://192.168.100.190:1234/takeme.gpg Output:... (8 Replies)
Discussion started by: r4v3n
8 Replies

5. UNIX for Dummies Questions & Answers

Using AWK and regex

Hi can you suggest in this regard The sample.txt conatins the data name lines type sam 12 txt sam 24 xls sam 36 pdf ram 32 txt ram 45 sxls ram 58 word sam 92 jpeg sam 21 gif sam 22 ltf from the data i need to sum all line... (5 Replies)
Discussion started by: krashraj
5 Replies

6. Shell Programming and Scripting

awk regex problem

hi everyone suppose my input file is ABC-12345 ABCD-12345 BCD-123456 i want to search the specific pattern which looks like - in a file so i used this command cat $file | awk ' { if ($0 ~ /-/) { print } }' so it gives me the result as ABCD-12345 BCD-12345 BCD-12345 ... (31 Replies)
Discussion started by: aishsimplesweet
31 Replies

7. Shell Programming and Scripting

awk variables in regex expression ?

Hello, Could someone explain why this one returns nothing: $ x=/jon/ $ echo jon | awk -v xa=$x '$1~xa {print}' $ while the following works fine: $ x=jon $ echo jon | awk -v xa=$x '$1==xa {print}' $ jon and the following works fine: $ echo jon | awk '$1~/jon/ {print}' $ jon ... (3 Replies)
Discussion started by: vilius
3 Replies

8. Shell Programming and Scripting

AWK regex to find only numbers

Hi guys I need to find both negative and positive numbers from the following text file. And i also dont need 0. 0 8 -7 -2268 007 -07 -00 -0a0 0a0 -07a0 7a00 0a0 Can someone please give a regex to filter out the values in red. I tried a few things in awk but it didnt work... (9 Replies)
Discussion started by: sridanu
9 Replies

9. Shell Programming and Scripting

awk or regex

Hi! I want to made a program that will generate code like this: {{Navedi XYZ |avtor=XYZ1 |naslov=XYZ2 |leto_izzida=XYZ3 |zalozba=XYZ4 |kraj=XYZ5 |isbn=XYZ6 |cobiss_id=XYZ7 }} from input like this: <b> ODGOVORNOST............. : <a... (5 Replies)
Discussion started by: smihael
5 Replies

10. Shell Programming and Scripting

sed, grep, awk, regex -- extracting a matched substring from a file/string

Ok, I'm stumped and can't seem to find relevant info. (I'm not even sure, I might have asked something similar before.): I'm trying to use shell scripting/UNIX commands to extract URLs from a fairly large web page, with a view to ultimately wrapping this in PHP with exec() and including the... (2 Replies)
Discussion started by: ropers
2 Replies
Login or Register to Ask a Question