--On Monday, August 04, 2008 22:24:21 +0200 Daniel Roethlisberger <[EMAIL PROTECTED]> wrote:

Gábor Kövesdán <[EMAIL PROTECTED]> 2008-08-04:
Chuck Swiger escribió:
> I'd just updated the BSD grep port to bsd-grep-20080725_1, but
> regrettably have noticed that many things using grep stopped working.
> For example, running GNU-style ./configure hangs here:
>
>  configure: creating ./config.status
>  load: 1.15  cmd: sh 72964 [runnable] 7.60u 95.78s 14% 2260k
>
> A trivial test case:
>
> % echo 'fee\nfi\nfoe\nfum' | ./grep -v fi
> % echo 'fee\nfi\nfoe\nfum' | /usr/bin/grep -v fi
> fee
> foe
> fum
> % ./grep --version
> grep (BSD grep) 2.5.1-FreeBSD
Hello Chuck,

thanks for your notes. It seems very strange to me, because GNU grep
produces the same output for me. Apart from this, the -v flag was really
broken, but I applied some fixes before updating the port and in the
version, which I committer, I thought that the -v flag was compatible.

Here is what I get at the moment:

> echo 'fee\nfi\nfoe\nfum' | ./grep -v fi
> echo 'fee\nfi\nfoe\nfum' | /usr/bin/grep -v fi
> /usr/bin/grep -V
grep (GNU grep) 2.5.1-FreeBSD

Copyright 1988, 1992-1999, 2000, 2001 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


It's still the same, thus I don't understand how you could produce that
output with GNU grep.

I may be stating the obvious, but note that depending on your shell and
it's configuration, echo might not translate \n to an actual newline.
You might need to use `echo -e' instead of `echo' to get four lines
printed instead of one.  /bin/sh and bash need it, ksh doesn't, not sure
about (t)csh.  Also note that our /bin/echo doesn't know about -e and
will never translate \n to a newline.  The following should be more
portable across different shells:

printf 'fee\nfi\nfoe\nfum' | ./grep -v fi
printf 'fee\nfi\nfoe\nfum' | /usr/bin/grep -v fi

Indeed:

[EMAIL PROTECTED] echo -e 'fee\nfi\nfoe\nfum'
fee
fi
foe
fum
[EMAIL PROTECTED] echo -e 'fee\nfi\nfoe\nfum' | grep -v fi
fee
foe
fum

--
Paul Schmehl, Senior Infosec Analyst
As if it wasn't already obvious, my opinions
are my own and not those of my employer.
*******************************************
Check the headers before clicking on Reply.

_______________________________________________
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to