grep version: 2.20zgrep version: 1.5

$cat test1hello
$cat test2goodbye
$cat test3goodbye
$cat test4goodbye
$grep "hello" test1     #works as expected
hello$echo $?0
$grep "goodbye" test1     #works as expected$echo $?1
$grep "hello" *    #works as expected. gets line from test1 and returns 
0test1:hello$echo $?0
$grep "goodbye" *    #works as expected. gets lines from test2, 3, and 4 and 
returns 0test2:goodbyetest3:goodbyetest4:goodbye$echo $?0

despite stating zgrep works the same as grep, the return codes over multiple 
files are different
$zgrep "hello" test1     #works as expected
hello$echo $?0
$zgrep "goodbye" test1     #works as expected$echo $?1
$zgrep "hello" *    #does NOT work as expected. gets line from test1 and 
returns 1. grep states that if ANY line is found, 0 will be returned
test1:hello$echo $?1

$zgrep "goodbye" *    #does NOT work as expected. gets lines from test2, 3, and 
4 and returns 1. grep states that if ANY line is found, 0 will be returned
test2:goodbyetest3:goodbyetest4:goodbye$echo $?1

$zgrep "goodbye" test2 test3 test4    #works as expected. finds pattern in all 
files and returns 0. bug only occurs if files exist where the pattern is not 
foundtest2:goodbyetest3:goodbyetest4:goodbye$echo $?0

Reply via email to