Need script to pluck lines of text from a file
Ted Richards
ted at isgtec.UUCP
Tue Jul 10 16:44:34 AEST 1990
In article <8962 at rosevax.Rosemount.COM> dan at scooter.rosemount.com (Dan Messinger) writes:
|> In article <8957 at rosevax.Rosemount.COM>, dan at scooter.rosemount.com (Dan
|> Messinger) writes:
|> |> In article <1990Jun30.180958.28569 at cbnewsd.att.com>,
|> |> jfb200 at cbnewsd.att.com (joseph.f.baugher) writes:
|> |> |>
|> |> |> I am looking for a Shell script capable of doing the following job:
|> |> |>
|> |> |> I have a file consisting of several dozen lines of text, as per example:
|> |> |>
|> |> |> text in line 1
|> |> |> text in line 2
|> |> |> ....
|> |> |> text in line n
|> |> |> startmarker
|> |> |> text in line n+1
|> |> |> text in line n+2
|> |> |> ....
|> |> |> ...
|> |> |> text in line n+m-1
|> |> |> endmarker
|> |> |> text in line n+m+1
|> |> |> text in line n+m+2
|> |> |> ....
|> |> |> ....
|> |> |> where startmarker and endmarker are lines of text with characteristic
|> |> |> markers in them which identify them as unique and different from
|> the others.
|> |> |> I want to be able to pipe the lines of text BETWEEN startmarker and
|> |> |> endmarker to another command for further processing. Unfortunately,
|> |> I do not
|> |> |> know ahead of time what the numbers n and m are.
|> |> |>
|> |>
|> |> Sounds like a job for sed.
|> |>
|> |> sed -n "/^startmarker/,/^endmarker/p"
|>
|> I was informed of a problem with this sed command, in that it also prints the
|> start and end markers. So I will try again.
How about:
sed -e "1,/^startmarker/d" -e "/^endmarker/,$d"
--
Ted Richards ...uunet!utai!lsuc!isgtec!ted ted at isgtec.UUCP
ISG Technologies Inc. 3030 Orlando Dr. Mississauga Ont. Canada L4V 1S8
More information about the Comp.unix.questions
mailing list