blob: 9681818ac539db17691526b7bdb427e2962d451b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
Ripped from Fedora.
http://bugs.gentoo.org/90626
--- zgrep.in
+++ zgrep.in
@@ -24,7 +24,7 @@
PATH="BINDIR:$PATH"; export PATH
-prog=`echo $0 | sed 's|.*/||'`
+prog=`echo "$0" | sed 's|.*/||'`
case "$prog" in
*egrep) grep=${EGREP-egrep -a} ;;
*fgrep) grep=${FGREP-fgrep -a} ;;
@@ -112,12 +112,15 @@
fi
$uncompress -cdfq "$i" |
if test $files_with_matches -eq 1; then
- $grep $opt "$pat" > /dev/null && echo $i
+ $grep $opt "$pat" > /dev/null && printf "%s\n" "$i"
elif test $files_without_matches -eq 1; then
- $grep $opt "$pat" > /dev/null || echo $i
+ $grep $opt "$pat" > /dev/null || printf "%s\n" "$i"
elif test $with_filename -eq 0 && { test $# -eq 1 || test $no_filename -eq 1; }; then
$grep $opt "$pat"
else
+ i=${i//\\/\\\\}
+ i=${i//|/\\|}
+ i=${i//&/\\&}
if test $with_filename -eq 1; then
sed_script="s|^[^:]*:|${i}:|"
else
|