How to Search for text in a file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting How to Search for text in a file
# 1  
Old 02-20-2009
How to Search for text in a file

I need to search for a record in a file and spit out the first record. The file however is csv and is laid out like this:

20984498494 J SMITH MISS SMITH ADDRESSSXXXXXX
30000000000 0000000000000 000000000000000 0000000000
402XXXXXXXX XXXXXXXXXXXXXXX XXXXXXXXXXX
50XXXXXX XXXXXXXXXXXXXXXX XXXXXXXXX
20765476746 J DOE MR DOE ADDRESS XXXXXXXXXXXXX
45XXXXXXXXXXXXXXXXXXXXXXXXXX DDDDDDDDDD

ETC.

Each record can be a different length and the only way to find the end of a record is that the next 20xxxxx is another customer.

How can I extract the first customer only from a file of 100's of records in that format.

Got me stumped????Smilie
# 2  
Old 02-20-2009
Not sure what exactly you want but i guess the below may help you...

Code:
$ cat ser.txt
20984498494 J SMITH MISS SMITH ADDRESSSXXXXXX
30000000000 0000000000000 000000000000000 0000000000
402XXXXXXXX XXXXXXXXXXXXXXX XXXXXXXXXXX
50XXXXXX XXXXXXXXXXXXXXXX XXXXXXXXX
20765476746 J DOE MR DOE ADDRESS XXXXXXXXXXXXX
45XXXXXXXXXXXXXXXXXXXXXXXXXX DDDDDDDDDD47

Want to search SMITH in your file.. use.....
Code:
$ awk '/SMITH/ {print}' ser.txt
20984498494 J SMITH MISS SMITH ADDRESSSXXXXXX

To get the first field in your file....

Code:
$ awk '{print $1}' ser.txt
20984498494
30000000000
402XXXXXXXX
50XXXXXX
20765476746
45XXXXXXXXXXXXXXXXXXXXXXXXXX

If the above commands didnt help you pls post a sample input as well as output file....
# 3  
Old 02-20-2009
Quote:
Originally Posted by Whiteboard
To get the first field in your file....
Code:
$ awk '{print $1}' ser.txt

The OP needs the first record not the first field:

Code:
awk '/^20/{print;exit}' ser.txt

Regards
# 4  
Old 02-20-2009
Quote:
Originally Posted by Franklin52
The OP needs the first record not the first field:

Code:
awk '/^20/{print;exit}' ser.txt

Regards
oops got the difference now...Smilie
# 5  
Old 02-23-2009
Thanks for replies:

this command awk '/^20/{print;exit}' ser.txt gives me:

20984498494 J SMITH MISS SMITH ADDRESSSXXXXXX

I need to get:

20984498494 J SMITH MISS SMITH ADDRESSSXXXXXX
30000000000 0000000000000 000000000000000 0000000000
402XXXXXXXX XXXXXXXXXXXXXXX XXXXXXXXXXX
50XXXXXX XXXXXXXXXXXXXXXX XXXXXXXXX

basically i need everything under the 20984498494 as all info relates to that client.The next 20xxxxx signifies the next client and info relating to them.
# 6  
Old 02-23-2009
The below code will work....

Code:
$ sed -n '/^20/,/^20/ { p; }' < ser.txt | sed '$d'
20984498494 J SMITH MISS SMITH ADDRESSSXXXXXX
30000000000 0000000000000 000000000000000 0000000000
402XXXXXXXX XXXXXXXXXXXXXXX XXXXXXXXXXX
50XXXXXX XXXXXXXXXXXXXXXX XXXXXXXXX

# 7  
Old 02-23-2009
Hi,

The below command also is working....means without sed '$d'

sed -n '/^20/,/^20/ {p;}' ser.txt

Thanks
va2206Smilie
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Search a text and return the text from file

Hi I have a set of input strings in a pattern as given below string1 string2 string3 string4 string5 I need to search this sequence of strings from a file in such a way that the first two strings (string1 and string2) and last two strings (string4 and string5) should match with the... (8 Replies)
Discussion started by: my_Perl
8 Replies

2. Shell Programming and Scripting

Read in search strings from text file, search for string in second text file and output to CSV

Hi guys, I have a text file named file1.txt that is formatted like this: 001 , ID , 20000 002 , Name , Brandon 003 , Phone_Number , 616-234-1999 004 , SSNumber , 234-23-234 005 , Model , Toyota 007 , Engine ,V8 008 , GPS , OFF and I have file2.txt formatted like this: ... (2 Replies)
Discussion started by: An0mander
2 Replies

3. Shell Programming and Scripting

Search text file

awk -F "" ' $2 ~ /<Clinical features:>|<Clinical features:>|<Inheritance pattern:>|<Inheritance pattern:>/{print $2, $3}' OFS='\t' genedx156.txt > output.txt The above command seems to run but no results are in the output. Basically, I am just searching for those key words and output the... (5 Replies)
Discussion started by: cmccabe
5 Replies

4. Shell Programming and Scripting

Search value in text file

Hi, I have the follwoing text file : db1;unrecoverable;0;20110728162548 db1;unrefreshed;1,NO_MV_VIEWS;20110728162548 xe1;Database;1;20110728162548 xe1;autoextensible;0;20110511112053 xe1;chk_offline_dbf;0;20110511112053 xe1;expiry_date;0;20110511112053 xe1;job;4;20110420111823... (2 Replies)
Discussion started by: yoavbe
2 Replies

5. Shell Programming and Scripting

search text file in file if this file contains necessary text (awk,grep)

Hello friends! Help me pls to write correct awk and grep statements for my task: I have got files with name filename.txt It has such structure: Start of file FROM: address@domen.com (12...890) abc DATE: 11/23/2009 on Std SUBJECT: any subject End of file So, I must check, if this file... (4 Replies)
Discussion started by: candyme
4 Replies

6. Shell Programming and Scripting

How do I search on a text file?

Hi, I'm new to shell programming and I have a text file with data with looks like this: chocolate:toblerone swiss:23:100:20 chocolate:ferro rocher:30:90:80 gummi bear:gummi co:5:20:12 . It is basically a file which stores food. The 1st field is the type of food, 2nd... (4 Replies)
Discussion started by: mofako
4 Replies

7. Shell Programming and Scripting

Search text from a file and print text and one previous line too

Hi, Please let me know how to find text and print text and its previous line. Please don't get irritated few days back I asked text and next line. I am using HP-UX 11.11 Thanks for your help. (6 Replies)
Discussion started by: kamranjalal
6 Replies

8. Shell Programming and Scripting

Search for a text in a file

How can i get all the output that i wanted see example below. ex: Wed Nov 9 11111111111111 22222222222222 33333333333333 Thu Nov 10 aaaaaaaaaaaa bbbbbbbbbbbbbb ccccccccccccccc Wed Nov 9 44444444444 55555555555 aaaaaaaaaaa (13 Replies)
Discussion started by: kenshinhimura
13 Replies

9. UNIX for Dummies Questions & Answers

search and replace a specific text in text file?

I have a text file with following content (3 lines) filename : output.txt first line:12/12/2008 second line:12/12/2008 third line:Y I would like to know how we can replace 'Y' with 'N' in the 3rd line keeping 1st and 2nd lines same as what it was before. I tried using cat output.txt... (4 Replies)
Discussion started by: santosham
4 Replies

10. UNIX for Dummies Questions & Answers

Search file contain some text

I am loging as root right now. I like to search and find the file that contain the text of "NBC 10.5" Both string and number. I know I need to use grep, but how do I use it??? Oh, yeah if I do, grep 'NBC' * then it gives me error grep: can't open usage i thought root can open... (5 Replies)
Discussion started by: yuimyt
5 Replies
Login or Register to Ask a Question