[CentOS] grep
mike.redan at bell.ca
mike.redan at bell.ca
Tue Aug 28 14:14:37 UTC 2007
>
> Not a CentOS specific question, although I am running grep on
> CentOS 4.3
> but how would you grep out a series of lines in a file starting at a
> specific point. For instance, if I have a file named foo and
> I want to
> grep out the next 5 lines after the first and only instance of the
> string "bar" how could I pull that off? Thanks so much.
>
"man grep" is your friend here
Quoting (cause they explain it better than I):
OPTIONS
-A NUM, --after-context=NUM
Print NUM lines of trailing context after matching
lines.
Places a line containing -- between contiguous
groups of
matches.
.
.
.
.
-m NUM, --max-count=NUM
Stop reading a file after NUM matching lines. If the
input is
standard input from a regular file, and NUM matching
lines are
output, grep ensures that the standard input is
positioned to
just after the last matching line before exiting,
regardless of
the presence of trailing context lines. This enables a
calling
process to resume a search. When grep stops after NUM
matching
lines, it outputs any trailing context lines. When the
-c or
--count option is also used, grep does not output a
count
greater than NUM. When the -v or --invert-match option is
also
used, grep stops after outputting NUM non-matching lines.
So your command would look something like this:
grep -m1 -A5 bar foo
This does not handle your case of "first and only" instance however. It
will stop after the first instance of the word bar.
More information about the CentOS
mailing list