![]() |
Hello and Welcome from United States to the UNIX and Linux Forums! Thank You for Visiting and Joining Our Global Community.
|
|
google unix.com
|
|||||||
| Forums | Register | Forum Rules | Links | Albums | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| Shell Programming and Scripting Post questions about KSH, CSH, SH, BASH, PERL, PHP, SED, AWK and OTHER shell scripts and shell scripting languages here. |
More UNIX and Linux Forum Topics You Might Find Helpful
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Extracting a line in a text file | terryporter51 | Shell Programming and Scripting | 5 | 10-13-2008 06:34 PM |
| Adding specific text and spaces to each line in a text file | hertingm | Shell Programming and Scripting | 4 | 08-25-2008 02:34 PM |
| search and replace a specific text in text file? | santosham | UNIX for Dummies Questions & Answers | 4 | 06-25-2008 05:53 PM |
| extracting a set of strings from a text file | Deanne | Shell Programming and Scripting | 2 | 09-20-2007 11:31 PM |
| Is extracting specific files from a zip file possible? | HLee1981 | UNIX for Dummies Questions & Answers | 1 | 10-14-2005 11:06 PM |
![]() |
|
|
LinkBack | Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
||||
|
Extracting specific text from a file
Dear All,
I have to extract a a few lines from a log file and I know the starting String and end string(WHich is same ). Is there any simplere way using sed - awk. e.g. from the following file -------------------------------------- Some text Date: 21 Oct 2008 Text to be extracted Somemore text to be extracted Date: 21 Oct 2008 Some more text so I would like to extract the following lines ------------- Text to be extracted Somemore text to be extracted --------------- I know the string "Date: 21 Oct 2008" One way I can think of is do a grep -n "Date: 21 Oct 2008" filename and then user head and tail. But I wanted to know is there any simplere way? Regards, Rahul |
|
||||
|
Hi,
try: sed -n '/^start/,/^end/{/^start\|^end/!{p}}' testfile where testfile is your file to search and start and end are the strings delimiting your pattern. This command will search every piece of text between a line starting with start and a line starting with end, inside this pattern it will print every line which doesn't start with "start" or "end". HTH Chris |
|
||||
|
Code:
sed -n '/Date/,/Date/p' filename | sed '/Date/d' |
| Sponsored Links | ||
|
|
![]() |
| Bookmarks |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|