Using sed to delete one regular pattern with conditions


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Using sed to delete one regular pattern with conditions
# 1  
Old 04-09-2015
Wrench Using sed to delete one regular pattern with conditions

Hi All ,

I am having a file like this

INPUT FILE

###############################
Code:
addfd_mjlala kksks sksks ks 
annsns_bbox_2 (sksksk ksks )
adnndn_nsns_bbox_3 (( jsjsdj sjsj )
malm_dkdm lsls lsl
mdndk_mkmd_dkd_bbox_4_kdkd [jkssk jsjs[]
ksksk skksk_bbox_jsj_KSK ((jsjsj jsjsj )

#############################################

OUTPUT FILE

#########################################
Code:
addfd_mjlala kksks sksks ks 
annsns (sksksk ksks )
adnndn_nsns (( jsjsdj sjsj )
malm_dkdm lsls lsl
mdndk_mkmd_dkd  [jkssk jsjs[]
ksksk skksk ((jsjsj jsjsj )

##############################################

So you can see we have file with some instances having _bbox
I need a script which can delete the _bbox till the end of the word but retain the other word in the same line

I am using script like this

Code:
sed  's/_bbox.*$//g' INPUT_FILE > OUTPUT_FILE

But it is deleting the second word from each line having bbox

Thanks
Kshitij
# 2  
Old 04-09-2015
Code:
$ sed 's/_bbox[^ ]* / /' infile
addfd_mjlala kksks sksks ks
annsns (sksksk ksks )
adnndn_nsns (( jsjsdj sjsj )
malm_dkdm lsls lsl
mdndk_mkmd_dkd [jkssk jsjs[]
ksksk skksk ((jsjsj jsjsj )

Where [^ ] stands for "no blank" and * as many or none of these.
This User Gave Thanks to zaxxon For This Post:
# 3  
Old 04-09-2015
If there can also be cases where there is no other word following your matched string and you want to remove that as well, you might want something more like:
Code:
sed -s 's/_bbox[^ ]* / /' -s 's/_bbox[^ ]*$//' infile

This User Gave Thanks to Don Cragun 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

sed command to delete a pattern in a file

Hi Everyone, I have an unusual requirement. Here is where i am stuck for sometime now... I have this text file.. lets say .. output.sql... it has lot of entries... here below is part of the entry... .. . . . . . . . . . . . . . . . .... (3 Replies)
Discussion started by: vivek d r
3 Replies

2. Shell Programming and Scripting

Sed. Delete line before and after pattern.

Hi. In need to delete line before and after pattern in file. I came to following commands. Delete line before sed -ni '/pattern/{x;d;};1h;1!{x;p;};${x;p;}' /etc/testfile Delete line after sed -i '/pattern/{N;s/\n.*//;}' /etc/testfile Is it possible to merge it in single command? (3 Replies)
Discussion started by: urello
3 Replies

3. Shell Programming and Scripting

Use sed to delete remainder of line after pattern

Greetings, I need some assistance here as I cannot get a sed line to work properly for me. I have the following list: Camp.S01E04.720p.HDTV.X264-DIMENSION Royal.Pains.S05E07.720p.HDTV.x264-IMMERSE Whose.Line.is.it.Anyway.US.S09E05.720p.HDTV.x264-BAJSKORV What I would like to accomplish is to... (3 Replies)
Discussion started by: choard
3 Replies

4. Shell Programming and Scripting

Delete a pattern using sed.

I have a string in which i need to match a pattern and then i need to delete that line which contains that matching string. The string is .. This is the given string //abc/def/IC.5.4.3/test/... i need to match //abc I am writing like this sed '/^/\/\abc/d' but it is not giving me... (4 Replies)
Discussion started by: codecatcher
4 Replies

5. Shell Programming and Scripting

Delete to eol after pattern with sed

working on interactive ftp script saving log and want to remove the password from log so "quote PASS foofoo" would become "quote PASS XXXXXXX" replacing or removing the password is of no matter have tried several sed commands but have only been successful with character matching not pattern ... (2 Replies)
Discussion started by: ppaprota
2 Replies

6. Shell Programming and Scripting

sed pattern to delete lines containing a pattern, except the first occurance

Hello sed gurus. I am using ksh on Sun and have a file created by concatenating several other files. All files contain header rows. I just need to keep the first occurrence and remove all other header rows. header for file 1111 2222 3333 header for file 1111 2222 3333 header for file... (8 Replies)
Discussion started by: gary_w
8 Replies

7. Shell Programming and Scripting

sed to find pattern and delete line before and after

I have the following file: line1 line2 MATCH line3 line4 I need to find the pattern, "MATCH" and delete the line before and after MATCH. So the result should be line1 MATCH lline4 I have to use sed because it is the only utility that is common across my environments. I... (1 Reply)
Discussion started by: craftereric
1 Replies

8. UNIX for Dummies Questions & Answers

locate a pattern and delete it using sed

if i have a file test and have a number(123)456-7899 how do i delete this without deleting all digits in the file. parentheses isn't necessary. (2 Replies)
Discussion started by: hobiwhenuknowme
2 Replies

9. HP-UX

How to delete specific pattern in a file with SED?

I have one file which is having content as following... 0513468211,,,,20091208,084005,5,,2,3699310, 0206554475,,,,20090327,123634,85,,2,15615533 0206554475,,,,20090327,134431,554,,2,7246177 0103000300,,,,20090523,115501,89,,2,3869929 0736454328,,,,20091208,084005,75,,2,3699546... (7 Replies)
Discussion started by: ganesh.mandlik
7 Replies

10. Shell Programming and Scripting

sed delete pattern with special characters

Hi all, I have the following lines <b>A gtwrhwrthwr text hghthwrhtwrtw </b><font color='#06C'>; text text (text) <b>B gtwrhwrthwr text hghthwrhtwrtw </b><font color='#06C'>; text text (text) <b>J gtwrhwrthwr text hghthwrhtwrtw </b><font color='#06C'>; text text (text) and I would like to... (5 Replies)
Discussion started by: stinkefisch
5 Replies
Login or Register to Ask a Question