Another text filtering question


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Another text filtering question
# 1  
Old 02-21-2008
Question Another text filtering question

I want to remove everything from a file but the word following the search word.

Example:

crap crap crap crap SearchWord WordToKeep crap crap crap

How would I do this with say awk or grep?

Thank you!
# 2  
Old 02-21-2008
Quote:
Originally Posted by DethLark
I want to remove everything from a file but the word following the search word.

Example:

crap crap crap crap SearchWord WordToKeep crap crap crap

How would I do this with say awk or grep?

Thank you!
Code:
{ wordtokeep=$(sed -e "s/.*SearchWord \([^ ]*\) .*/\1/g" file); echo "$wordtokeep" > file; }

# 3  
Old 02-21-2008
Sorry to correct you, vino, but your code will work only in most cases, not in all: if the WordToKeep is the last word in the line it will fail because you require a space after it.

On the first line your code will work, on the second it will fail:

Code:
"crap crap searchword wordtokeep crap"
"crap crap searchword wordtokeep"

It will also fail in cases where the WordToKeep is followed by some punctuation mark like it is the case in texts:

Code:
"crap crap searchword wordtokeep, crap"


I therefore suggest the following enhancement to your code (<spc> and <tab> are characters, only encoded here for readability):

Code:
sed -e "s/.*SearchWord \([^<spc><tab>;,.!?":][^<spc><tab>;,.!?":]*\)/\1/g" file

bakunin
# 4  
Old 02-21-2008
Thanks for that.

Cheers !
# 5  
Old 02-21-2008
Well I knew it wasn't all that easy. Thanks for the answers.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Filtering text with awk

I need to filter a file that is composed like that: >Cluster 0 0 292nt, >last294258;size=1;... * >Cluster 1 0 292nt, >last111510;size=1;... * 1 290nt, >last136280;size=1;... at -/98.62% 2 292nt, >last217336;size=1;... at +/99.66% 3 292nt, >last280937;size=1;... at -/99.32% >Cluster 2... (6 Replies)
Discussion started by: pedro88
6 Replies

2. Shell Programming and Scripting

Filtering data from text to csv

Hello, Is there a way to filerter data from a text file as shown below to a Column e.g. hostname nfsmount as two separate column. Currently I could get hostname and the mount is appearing below.. using this script #! /bin/bash for i in `cat fqdn.txt` do echo "$i ............ " >>... (3 Replies)
Discussion started by: Cy Pqa
3 Replies

3. Shell Programming and Scripting

text filtering

INPUT FILE: Date: 10-JUN-12 12:00:00 B 0: 00 00 00 00 10 00 16 28 B 120: 00 00 00 39 53 32 86 29 Date: 10-JUN-12 12:00:10 B 0: 00 00 00 00 10 01 11 22 B 120: 00 00 00 29 23 32 16 29 Date: 10-JUN-12 12:00:20 B 0: 00 00 00 00 10 02 17 29 B 120: 00 00 35 51 42 66 14 Date: 10-JUN-12... (5 Replies)
Discussion started by: thibodc
5 Replies

4. Shell Programming and Scripting

Parsing and filtering multiline text into comma separated line

I have a log file that contains several reports with following format. <Start of delimiter> Report1 header Report1 header continue Report1 header continue Record1 header Record1 header continue Record1 header continue field1 field2 field3 field4 ------... (1 Reply)
Discussion started by: yoda9691
1 Replies

5. Shell Programming and Scripting

Filtering out text with awk

(0 Replies)
Discussion started by: nilekyle
0 Replies

6. Programming

need help with shell script filtering files and sort! newbie question?

Hi folks, I would like to get familiar with shell script programing. The first task is: write a shell script that: scans your home-folder + sub-directory for all txt-files that all users of your group are allowed to read and write then output these files sorted by date of last... (4 Replies)
Discussion started by: rollinator
4 Replies

7. Shell Programming and Scripting

text processing and filtering scripting

Still new to bash. Using debian lenny 5, bash version 3.2.39. I'm working on three scripts. I need help completing them. One script that inputs a plain text file, echo then chop it up into separate whitespace-delimited strings as an output. Not sure how to do this... for example, the... (4 Replies)
Discussion started by: l20N1N
4 Replies

8. Shell Programming and Scripting

filtering text

Hi how can I filter the text using this one. SAMPLE servervmpool -listall|tail -11 ================================================================================ pool number: 112 pool name: Net-Ora-1wk description: Net-Ora-1wk max partially full: 0... (12 Replies)
Discussion started by: kenshinhimura
12 Replies

9. Shell Programming and Scripting

Text formatting question

How can i change the display of a text file containing 4980 167 187 4980 167 187 4980 167 180 4980 167 180 4980 167 179 4980 272 174 (7 Replies)
Discussion started by: aliaa2a
7 Replies

10. UNIX for Dummies Questions & Answers

Filtering text from a string

I'm trying to write a script which prints out the users who are loged in. Printing the output of the "users" command isn't the problem. What I want is to filter out my own username. users | grep -v (username) does not work because the whole line in which username exists is suppressed. If... (5 Replies)
Discussion started by: Cozmic
5 Replies
Login or Register to Ask a Question