Hi, I've searched in this forum all day long but was not able to find enough codes to help me do a task. The only code that I can come up with is this:
sed '/[0-9] [0-9] /,/[0-9] [0-9] /{//p;d;}' inputfile > outputfile
I would like to sed/awk/grep a file for two patterns and then delete the lines between those patterns. Please see the inputfile below. This is just a small portion of a lengthy file. Everything in bold should be deleted.
In this case, I would like to search for the first pattern [0 0 2] and the last pattern [2433 2433 2], then delete every line between these patterns but keeping the line [ANT_2] above the line [2433 2433 2]. Similarly, I would like to search for the first pattern [0 0 4] and the last pattern [1 1 2], then delete every line between these patterns but keeping the line [ANT_6] above the line [1 1 2]. The number of lines between these pattens can vary. The only thing that I can see that is constant is the [0 0 ].
Any help or suggestion would be greatly appreciated.
inputfile
-------- ANT_1
0 0 2 Jan 14 10:11:44 2009
Rule File Pathname: /home/la/_drc_
ply to gate area ratio > 500 ANT_2
2433 2433 2 Jan 14 10:13:46 2009
Rule File Pathname: /home/la/_drc_
mt1 to gate area ratio > 40
p 1 44
-2109300 -10645700
-2095600 -10645700
-2095600 -10649700
-2088500 -10649700
-2088500 -10655700
-2071900 -10655700 ANT_3
0 0 2 Jan 14 10:13:59 2009
Rule File Pathname: /home/la/_drc_
mt2 diff gate inputs.
ANT_4
0 0 2 Jan 14 10:14:01 2009
Rule File Pathname: /home/la/_drc_
gold diff gate inputs. ANT_5 0 0 4 Jan 14 10:14:01 2009
Rule File Pathname: /home/la/_drc_
gold diff gate inputs. ANT_6
1 1 2 Jan 14 10:14:01 2009
Rule File Pathname: /home/la/_drc_
gold diff gate inputs. NET_AREA_RATIO_RDBS
0 0 3 Jan 14 10:14:01 2009
ANT2.OUT
ANT3.OUT
ANT4.OUT
Desired outputfile
----------------
ANT_2
2433 2433 2 Jan 14 10:13:46 2009
Rule File Pathname: /home/la/_drc_
mt1 to gate area ratio > 40
p 1 44
-2109300 -10645700
-2095600 -10645700
-2095600 -10649700
-2088500 -10649700
-2088500 -10655700
-2071900 -10655700
ANT_6
1 1 2 Jan 14 10:14:01 2009
Rule File Pathname: /home/la/_drc_
gold diff gate inputs.
Ghostdog, Im not sure where the More Unix/Linux Forum is because I couldn't find it in this forum list.
I was able to get a code from this forum and apply it to what I'm doing. It's not exact but it's close.
code
-----
This is my input file:
inputfile b
---------
This is my output file:
outputfile e
-----------
I'm not sure why the awk command delete the lines that are found by the search pattern [1-9] [1-9]. The originally posting for this code is for to extract the one line above and two lines below the pattern [1-9] [1-9]. This code is backward. It deletes instead of extract that's why I have to use the diff to get the lines that were delete. Please let me know how to recode it to extract instead of delete.
There is one problem with this code that I dont understand is that I use the pattern [1-9] [1-9] so it shouldn't be extracting the line:
55 55 2 May 4 16:30:30 2009
But that is what I wanted. I also want the line:
20 20 2 May 4 16:30:03 2009
But it didn't get extracted. How do I change the pattern /[1-9] [1-9] /, so that it will find any string; ie; 55 55 2 or 20 20 2? I've tried a different pattern /[1-9]* [1-9]* / or something along that line, but it's not working.
Sorry for the lengthy request but any advise would be greatly appreciated. This is my code:
Last edited by vgersh99; 05-28-2009 at 04:01 PM..
Reason: added code tags
To keep the forums high quality for all users, please take the time to format your posts correctly.
First of all, use Code Tags when you post any code or data samples so others can easily read your code. You can easily do this by highlighting your code and then clicking on the # in the editing menu. (You can also type code tags [code] and [/code] by hand.)
Second, avoid adding color or different fonts and font size to your posts. Selective use of color to highlight a single word or phrase can be useful at times, but using color, in general, makes the forums harder to read, especially bright colors like red.
Third, be careful when you cut-and-paste, edit any odd characters and make sure all links are working property.
Hi, I need to print lines which are matching with start pattern "SELECT" and END PATTERN ";" and only select the last "select" statement including the ";" .
I have attached sample input file and the desired input should be as:
INPUT FORMAT:
SELECT
ABCD,
DEFGH,
DFGHJ,
JKLMN,
AXCVB,... (5 Replies)
Delete patterns matching
OS version: RHEL 7.3
Shell : Bash
I have a file like below (pattern.txt). I need to delete all lines starting with the following words (words separated by comma below) and ) character.
LOGGING, NOCOMPRESS, TABLESPACE , PCTFREE, INITRANS, MAXTRANS, STORAGE,... (3 Replies)
Hi,
How can i delete values between 2 patterns like below:-
input.txt
192.1.1.2.22 blablabala
23.1.A.1.2 blablabalbl
5.4.1.1.12 blablaba
i need to delete all values between starting from "." no 3 and second column. the output should be:
192.1.1 blablabala... (15 Replies)
Hi,
i need help to delete all the lines between 2 matched patterns and the first pattern must be deleted too. sample as follows:
inputfile.txt
>kump_1
...........................
...........................
>start_0124
dgfhghgfh
fgfdgfh
fdgfdh
>kump_2
............................. (7 Replies)
Hello all
I have a file my DNS server where there are duplicate paragrapsh like below. How can I remove the duplicate paragraph so that only one paragraph remains.
BEGIN;
replace into domains (name,type) values ('225.168.192.in-addr.arpa','MASTER');
replace into records (domain_id,... (2 Replies)
Hi, if in between strings "<section" and "</section>" across multiple lines there occurs the string "ole-present", delete all line breaks and replace any tabs or multiple spaces with a single space. Looking for an AWK or SED solution. Thank you.
<section ...
status = "ole-present"
...... (2 Replies)
Hi Gurus,
I have a file say for ex. file1 which has 3500 lines in it which are different account numbers and another file (file2) which has 230000 lines in it. I want to read all the lines in file1 and delete all those lines from file2 which has that same pattern as in file1. I am not quite... (4 Replies)
Friends,
I have .txt file with following format.
START
ABC|Prashant1|Patel1
ABC|Prashant2|Patel2
ABC|Prashant1|Patel1
ABC|Prashant2|Patel2
END
I would like to do:
1) Delete line with START
2) Delete line with END
3) Remove ABC|
4) Delete duplicate records
The following command... (7 Replies)
I want to delete lines like this
sed '/FROM_HERE/,/TO_HERE/d'
but I would like to *not* delete the second match, i.e. the TO_HERE line. How can I achieve this?
Thank you! (1 Reply)