[prev in list] [next in list] [prev in thread] [next in thread]
List: busybox
Subject: AW: BUG: grep -v -x -f does not work when pattern file is empty
From: <dietmar.schindler () manroland-web ! com>
Date: 2018-04-05 9:57:17
Message-ID: 9bf2bf8dd0b34f949f2b563ac3e95aee () AUSMXMBX04 ! mrws ! biz
[Download RAW message or body]
> Von: Quentin Rameau
> Gesendet: Donnerstag, 5. April 2018 10:24
>
> Hello Dietmar,
>
> > > The standard specifies, for the -f flag:
> > >
> > > "Patterns in pattern_file shall be terminated by a <newline>. A null
> > > pattern can be specified by an empty line in pattern_file."
> >
> > The above does not rule an empty pattern_file (i. e. no patterns) out.
> > The actually relevant part from
> > http://pubs.opengroup.org/onlinepubs/9699919799/utilities/grep.html
> > is:
> >
> > -f pattern_file
> > Read one or more patterns from the file named by the pathname
> > pattern_file. …
> >
> > > So calling grep -f with an empty file is non-standard thus not a BUG
> > > per se.
> >
> > True, but because of the wording "one or more patterns".
>
> Well, it's a combination of both. You don't get an empty set of
> patterns without specifying[:] a pattern must be an empty line.
Hello, Quentin,
I beg to differ. Your subclause "a pattern must be an empty line" doesn't make sense, \
so I take you meant "a null pattern must be an empty line". But "a null pattern" is \
distinct from "an empty set of patterns"; a set of patterns that consists of one null \
pattern is not an empty set, but rather a set with cardinality one.
> But this is my mistake for keeping implied that yes, specifying an
> option means it mustn't be empty. ^^
It doesn't mean that as a matter of course. If the "one or more patterns" were \
omitted from the above, it would read "Read patterns from the file named by the \
pathname pattern_file." Then, zero patterns (i. e. an empty pattern_file) would be \
legal, and the sentences you cited would not apply at all, because they refer to \
patterns, of which there aren't any in an empty file.
--
Regards,
Dietmar
________________________________
manroland web systems GmbH | Managing Director: Alexander Wassermann
Registered Office: Augsburg | Trade Register: AG Augsburg | HRB-No.: 26816 | VAT: \
DE281389840
Confidentiality note:
This eMail and any files transmitted with it are confidential and intended solely for \
the use of the individual or entity to whom they are addressed. If you are not the \
intended recipient, you are hereby notified that any use or dissemination of this \
communication is strictly prohibited. If you have received this eMail in error, then \
please delete this eMail. ________________________________
_______________________________________________
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic