[Bug 13151] New: Inconsistent exit code with grep -L

bugzilla at busybox.net bugzilla at busybox.net
Wed Aug 12 09:07:52 UTC 2020


https://bugs.busybox.net/show_bug.cgi?id=13151

            Bug ID: 13151
           Summary: Inconsistent exit code with grep -L
           Product: Busybox
           Version: 1.31.x
          Hardware: All
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P5
         Component: Other
          Assignee: unassigned at busybox.net
          Reporter: xiechengliang1 at huawei.com
                CC: busybox-cvs at busybox.net
  Target Milestone: ---

Created attachment 8556
  --> https://bugs.busybox.net/attachment.cgi?id=8556&action=edit
Inconsistent exit code with grep -L

`grep` / `grep -v` / `grep -l` when the "search" is successful, it exits `0`
and when the search is unsuccessful it exits `1`. but `grep -L` does not follow
this pattern which maybe an oversight or bug.

Consider the following:

$ echo hello > f

# Search is for "hello", it matches so exit code is 0
$ grep hello ./f; echo $?
hello
0
# Search is for "hi", it fails to match so the exit code is 1
$ grep hi ./f; echo $?
1

# Search is for not "hi", it matches so exit code is 0
$ grep -v hi ./f; echo $?
hello
0
# Search is for not "hello", it fails to match so the exit code is 1
$ grep -v hello ./f; echo $?
1

# Search is for filenames containing hello, it matches so exit code is 0
$ grep -l hello ./f; echo $?
f
0
# Search is for filenames containing hi, it fails to match so exit code is 1
$ grep -l hi ./f; echo $?
1

# Search is for filenames not containing hi, this search is successful
**but it exits 1**
$ grep -L hi ./f; echo $?
f
1
# Search is for filenames not containing hello, this search fails
**but it exits 0**
$ grep -L hello ./f; echo $?
0

GNU grep had same problem, but now it's fixed.
https://lists.gnu.org/archive/html/bug-grep/2017-08/msg00010.html

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the busybox-cvs mailing list