SED to remove a line above and lines below.


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting SED to remove a line above and lines below.
# 1  
Old 11-08-2010
SED to remove a line above and lines below.

SmilieHi All,

I need help on removing lines in a text file.

Sample file :
Quote:

Client=0x 0
IPAddress=113.211.45.33
Client=0
ClientV=0
........
Uncomp=0
Comp=0
When there is a match ip for IPAddress in my `cat ip.out`, proceed delete line above until string "Comp" is found.

Thank you very much.

---------- Post updated at 12:56 AM ---------- Previous update was at 12:53 AM ----------

I found very useful SED in this forum but i got no idea how to manipulate it.

Code:
sed -rn '/(0\.0000 *){6}/{n;n;x;d};x;1d;p;${x;p}'

Smilie

Last edited by Scott; 11-08-2010 at 03:23 AM.. Reason: Code tags
# 2  
Old 11-08-2010
To be precise could you pls post the desired output from the above sample file..
# 3  
Old 11-08-2010
Hi,

According to michaelrozar17, I find the post not clear enought. Even so I will make a try:
Code:
$ cat infile
Client=0x 0
IPAddress=113.211.45.33
Client=0
ClientV=0
........
Uncomp=0
Comp=0

$ sed '/^IPAddress=113\.211\.45\.33/I , /^Comp=/I { /^IPAddress=/I! d }' infile
Client=0x 0
IPAddress=113.211.45.33

Regards,
Birei
# 4  
Old 11-11-2010
Hi Guy,

Below is the sample output file

Quote:
Client=0x 0
IPAddress=200.200.200.200
Client=0
ClientV=0
........
Uncomp=0
Comp=0

Client=0x 0
IPAddress=113.211.45.33
Client=0
ClientV=0
........
Uncomp=0
Comp=0

Client=0x 0
IPAddress=10.10.10.10
Client=0
ClientV=0
........
Uncomp=0
Comp=0
TO

Quote:
Client=0x 0
IPAddress=200.200.200.200
Client=0
ClientV=0
........
Uncomp=0
Comp=0

Client=0x 0
IPAddress=10.10.10.10
Client=0
ClientV=0
........
Uncomp=0
Comp=0
I get it resolved by combining all rows and add a newline whenever there is Client string and finally grep -v.

But I still keen to know how to doit.

Thank you in advance.
# 5  
Old 11-11-2010
Try this:
Code:
awk '!/113.211.45.33/' RS= ORS="\n\n" file

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

awk with sed to combine lines and remove specific odd # pattern from line

In the awk piped to sed below I am trying to format file by removing the odd xxxx_digits and whitespace after, then move the even xxxx_digit to the line above it and add a space between them. There may be multiple lines in file but they are in the same format. The Filename_ID line is the last line... (4 Replies)
Discussion started by: cmccabe
4 Replies

2. Shell Programming and Scripting

awk to remove lines that do not start with digit and combine line or lines

I have been searching and trying to come up with an awk that will perform the following on a converted text file (original is a pdf). 1. Since the first two lines are (begin with) text they are removed 2. if $1 is a number then all text is merged (combined) into one line until the next... (3 Replies)
Discussion started by: cmccabe
3 Replies

3. Shell Programming and Scripting

How to remove certain lines using sed?

Hi, I am new to unix and i started some scripting recently. Please go through the following script i wrote. #!/bin/sh file='path../tfile' file1='path../tfile1' rmfile='path../test2' C1=1 C2=1 exec 3< $file1 while read LINE1; do read LINE2 <&3 a=$LINE1 b=`expr $LINE2 - 1` ... (1 Reply)
Discussion started by: Subbu123
1 Replies

4. UNIX for Dummies Questions & Answers

How to remove certain lines using sed?

Hi I have the following kind of line sin my file . print ' this is first'. print ' this is firs and next ' ' line continuous '. -- this is entire print line. print ' this is first and next ' ' line continuous and' 'still there now over'. -- this 3lines together a single print line. ... (5 Replies)
Discussion started by: Sivajee
5 Replies

5. Shell Programming and Scripting

Locate and remove lines with sed

Gents, I would like to remove some lines from a big file ( file2). The objetive is to remove all the lines in file2 containing a certain string which are in file data2delete.. file data2delete contens: 2573.0 7260.01 2893.0 7255.01 2903.0 7245.01 2897.0 7255.01 2561.0 7255.01... (6 Replies)
Discussion started by: jiam912
6 Replies

6. UNIX for Dummies Questions & Answers

Sed to remove only first line erroneously removes last line too

Hello everyone, This is my first posting. I have read the rules of this forum. I have searched many various threads and haven't found one that applies to my situation or suggestions to fix the issue. I do appreciate the help. I am trying to execute a basic UNIX script in a Solaris... (4 Replies)
Discussion started by: dqrgk0
4 Replies

7. Shell Programming and Scripting

using sed to remove lines

Can somebody explain why my sed command is not working. I do the folloinwg: Generates a binary file to /tmp/x1.out /usr/lib/sa/sa2 -s 4:00 -e 8:00 -i 3600 -A -o /tmp/x1.out decodes the file (no problem so far) sar -f /tmp/x1.out When I do this it does not appear to delete the... (4 Replies)
Discussion started by: BeefStu
4 Replies

8. Shell Programming and Scripting

How to remove lines before and after with awk / sed ?

Hi guys, I need to remove the pattern (ID=180), one line before and four lines after. Thanks. (5 Replies)
Discussion started by: ashimada
5 Replies

9. Shell Programming and Scripting

sed remove last 10 characters of a line start from 3rd line

hello experts, I need a sed command that remove last 10 characters of a line start from 3rd line. any suggestions? Thanks you (7 Replies)
Discussion started by: minifish
7 Replies

10. Shell Programming and Scripting

SED help (remove line::parse again::add line)

Aloha! I have just over 1k of users that have permissions that they shouldn't under our system. I need to parse a provided list of usernames, check their permissions file, and strip the permissions that they are not allowed to have. If upon the permissions strip they are left with no permissions,... (6 Replies)
Discussion started by: Malumake
6 Replies
Login or Register to Ask a Question