Date: Wed, 4 Aug 2010 11:40:45 -0500 From: freebsd-lists-erik@erikosterholm.org To: current@FreeBSD.org Subject: Re: bsdgrep does not work with tail -f | grep combination Message-ID: <20100804164045.GA52831@limerick.barragry.com> In-Reply-To: <20100804162809.GE59909@e.0x20.net> References: <86eiefhalp.wl%poyopoyo@puripuri.plala.or.jp> <4C585E44.5030608@FreeBSD.org> <1280933468.2752.2.camel@RabbitsDen> <20100804162809.GE59909@e.0x20.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Aug 04, 2010 at 06:28:10PM +0200, Lars Engels wrote: > On Wed, Aug 04, 2010 at 10:51:08AM -0400, Alexandre Sunny Kovalenko wrote: > > On Tue, 2010-08-03 at 20:21 +0200, Gabor Kovesdan wrote: > > > Em 2010.08.03. 19:25, poyopoyo@puripuri.plala.or.jp escreveu: > > > > Hi, > > > > > > > > It seems bsdgrep does not work when piped from tail -f. > > > > I'm running r210728. > > > > > > > > term0$ jot 10> /tmp/1 > > > > term0$ tail -f /tmp/1 | grep 0 > > > > [no output] > > > > > > > > otherterm$ jot 10>> /tmp/1 > > > > [no output to term0] > > > > > > > > ===== > > > > > > > > with GNU grep: > > > > > > > > term0$ tail -f /tmp/1 | gnugrep 0 > > > > 10 > > > > otherterm$ jot 10>> /tmp/1 > > > > [on term0] > > > > 10 > > > > 10 > > > > > > > I've checked on 8.0 and GNU grep doesn't output anything either for me. > > > If you use tail -f, you will enter more lines and end it with EOF, won't > > > you? And then BSD grep will process the input and print out matches. I > > > don't think it's bad behaviour in itself but if you can explain why you > > > think it's bad I'm willing to change it. > > > > > I am not sure it is specific to the GNU grep -- below is the example > > from AIX 5.3: > > [...] > > Same on Solaris, so this is not a GNU feature. Why is bsdgrep reading the whole file before processing, anyway? It seems like line-by-line processing would be the way to go. Erik
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100804164045.GA52831>