Deleting lines from a stream after matching a pattern


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Deleting lines from a stream after matching a pattern
# 8  
Old 03-05-2012
Hi,
input file and expected output files attached.
Thanks again!
# 9  
Old 03-05-2012
Did you copy/paste into the old.txt file ?

How has the old.txt file been generated ?
# 10  
Old 03-05-2012
please open with wordpad, notepad removes line formation.
old.txt is the output of the ldapsearch...
# 11  
Old 03-05-2012
Code:
awk 'NR<2{printf $0;next}{printf "%s",(/^ /?z:RS) $0}END{print RS}' yourfile | awk '/shadow:/,/shadow>/{next}/^ *.$/{next}1'

---------- Post updated at 06:47 PM ---------- Previous update was at 06:44 PM ----------

Quote:
Originally Posted by lorzinian
please open with wordpad, notepad removes line formation.
old.txt is the output of the ldapsearch...
Yup, i know, what i meant was :

is old.txt the result of an unix command or script or whatever ?

or the result of a job that run in an application ? or from anywhere else ?

How has this input file been generated ?

Because it seems this file has been generated in a very bad way, with truncated lines even without a fixed length ... so it seems to be a very crap format that make me suspect that is has not been generated in the correct way it shoud have been.

---------- Post updated at 07:05 PM ---------- Previous update was at 06:47 PM ----------

To keep the fsCert and fsKey in 2 separate line and having their second line starting with a space, you can give a try to :
Code:
awk 'NR<2{printf $0;next}{printf "%s",(/^ /?z:RS) $0}END{print RS}' yourfile | awk '/shadow:/,/shadow>/{next}/^ *.$/{next}/^fs(Cert|Key)/{x=$NF;NF--;print $0 RS FS x;next}1'


Last edited by ctsgnb; 03-05-2012 at 01:53 PM..
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Grep -v lines starting with pattern 1 and not matching pattern 2

Hi all! Thanks for taking the time to view this! I want to grep out all lines of a file that starts with pattern 1 but also does not match with the second pattern. Example: Drink a soda Eat a banana Eat multiple bananas Drink an apple juice Eat an apple Eat multiple apples I... (8 Replies)
Discussion started by: demmel
8 Replies

2. Shell Programming and Scripting

Deleting lines on matching certain pattern

hi I have a large xml file from which i have taken few lines . In this file I have to find for the string </invoices> and check if the 3 rd line after this string does not begin with <portCode> ,then i have to delete the string </invoices> and the next line having the string </shippingBill>... (13 Replies)
Discussion started by: sunnyboy
13 Replies

3. Shell Programming and Scripting

Sed: printing lines AFTER pattern matching EXCLUDING the line containing the pattern

'Hi I'm using the following code to extract the lines(and redirect them to a txt file) after the pattern match. But the output is inclusive of the line with pattern match. Which option is to be used to exclude the line containing the pattern? sed -n '/Conn.*User/,$p' > consumers.txt (11 Replies)
Discussion started by: essem
11 Replies

4. Shell Programming and Scripting

Matching a pattern 250 characters up and down stream

hii all i have a file a which contains some thing like this strand smthg position + yyx 3020 - yyw 10,000 now i have another file (file2) which contains the data starting from 1 to n positions i want to refer first file if + ... (4 Replies)
Discussion started by: anurupa777
4 Replies

5. Shell Programming and Scripting

Deleting a matching string(line) which is also in other lines

Hi, i need help with my shell script I have a file input.txt containing the following contents /. /usr /usr/share /usr/share/doc /usr/share/doc/wine /usr/share/doc/wine/copyright /usr/share/doc/wine/changelog.Debian.gz I need output as /usr/share/doc/wine /usr/share/doc/wine/copyright... (3 Replies)
Discussion started by: Amit0991
3 Replies

6. Shell Programming and Scripting

Removing all lines prior to the last pattern in a file/stream

Hi all, I didn't find anything that specifically answers this after searching for a bit, so please forgive me if this has been covered before. I'm looking to delete all lines prior to the last occurrence of a string in a file or stream from within a shell script (bash.) A bit of... (4 Replies)
Discussion started by: LivinFree
4 Replies

7. Shell Programming and Scripting

Finding lines matching the Pattern and their previous lines in a file

Hi, I am trying to locate the occurences of certain pattern like 'Possible network disconnect' in a text file. I can get the actual lines matching the pttern using: grep -w 'Possible network disconnect' file_name. But I am more interested in getting the timing of these events which are... (7 Replies)
Discussion started by: sagarparadkar
7 Replies

8. Shell Programming and Scripting

pattern matching lines using the date, and then joining the lines

Hi Guys, Was trying to attempt the below using awk and sed, have no luck so far, so any help would be appreciated. Current Text File: The first line has got an "\n", and the second line has got spaces/tabs then the word and "\n" TIME SERVER/CLIENT TEXT... (6 Replies)
Discussion started by: eo29
6 Replies

9. Shell Programming and Scripting

pattern matching over multiple lines and deleting the first

I've got a longish log file with content such as Uplink traffic: Downlink traffic: I want to parse the log file and remove any line that contains the string "Uplink traffic:" at the beginning of the line, but only if the line following it beginnings with the string "Downlink traffic:" (in... (7 Replies)
Discussion started by: Yorkie99
7 Replies

10. Shell Programming and Scripting

counting the lines matching a pattern, in between two pattern, and generate a tab

Hi all, I'm looking for some help. I have a file (very long) that is organized like below: >Cluster 0 0 283nt, >01_FRYJ6ZM12HMXZS... at +/99% 1 279nt, >01_FRYJ6ZM12HN12A... at +/99% 2 281nt, >01_FRYJ6ZM12HM4TS... at +/99% 3 283nt, >01_FRYJ6ZM12HM946... at +/99% 4 279nt,... (4 Replies)
Discussion started by: d.chauliac
4 Replies
Login or Register to Ask a Question