|
From: | Paul Eggert |
Subject: | bug#21414: -F string with tailing newline always matches |
Date: | Fri, 4 Sep 2015 10:34:12 -0700 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.1.0 |
On 09/04/2015 07:45 AM, Ian Brown - HNAS wrote:
Grep version 2.20 When using the ouput of another command to pass match strings into grep using -F I was getting unexpected results as it was matching every line. If the terminating newline is removed the grep started to work again. Easy to work around but this is different behaviour from 2.12 and may cause some scripts to fail. Ian Brown (HDS)
I assume you're referring to the following sort of behavior: $ printf 'abc\n\ndef\n' >foo $ grep -F 'abc ' foo abc defOlder versions of GNU grep would ignore the newline after 'abc' in the pattern, and would output only 'abc' with the above example. This behavior was incompatible with non-GNU grep implementations and with POSIX, and the incompatibility seemed to be unintended and not that useful and was fixed at some point (sorry, don't know the GNU grep version). Sorry you were relying on it.
[Prev in Thread] | Current Thread | [Next in Thread] |