grep by paragraph

Michael Parker mparker at hp.com
Fri Aug 30 14:26:25 UTC 2013


On Fri, Aug 30, 2013 at 01:03:24PM +0200, Timothy Murphy wrote:
> Dave Mitchell wrote:
> 
> >> that will print out a whole paragraph -
> >> defined as the section between two blank lines -
> >> containing a given word or phrase?
> >> 
> >> Such as the above 4 lines.
> >> If not, can anyone suggest a simple script that will do this?
> > 
> > The perl one-liner below demonstrates this. Setting the $/ (input record
> > separator) var to the empty string causes perl to read in "lines" a
> > paragraph at a time.
> 
> >     $ perl -e'$/=""; while (<>) { print if /green/ }' /tmp/text
> 
> Thanks for the solutions.
> 
> I gather there is no method using grep or one of its variants?

I don't know about paragraphs, but you do have the -A, -B, and -C options to get
context.  

   grep -C 3 string file

This will give you three lines before and after lines containing string.

Mike

> 
> -- 
> Timothy Murphy  
> e-mail: gayleard /at/ eircom.net
> School of Mathematics, Trinity College, Dublin 2, Ireland
> 
> 
> -- 
> users mailing list
> users at lists.fedoraproject.org
> To unsubscribe or change subscription options:
> https://admin.fedoraproject.org/mailman/listinfo/users
> Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
> Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
> Have a question? Ask away: http://ask.fedoraproject.org


More information about the users mailing list