X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=zmore.in;h=c5550f5597bab01543ed665f69d4ca20ba41d481;hb=92249085071a973e2c0621b0415b93d2e48bb00d;hp=bd6b947446b5aff4fcd2e57fca8c13eb3c680d9a;hpb=e7921f54c622e3b32e525f345bc34308821e4ae0;p=debian%2Fgzip diff --git a/zmore.in b/zmore.in index bd6b947..c5550f5 100644 --- a/zmore.in +++ b/zmore.in @@ -1,11 +1,11 @@ #!/bin/sh -# Copyright (C) 2001, 2002 Free Software Foundation +# Copyright (C) 2001-2002, 2007, 2010-2018 Free Software Foundation, Inc. # Copyright (C) 1992, 1993 Jean-loup Gailly # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or +# the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # This program is distributed in the hope that it will be useful, @@ -17,72 +17,38 @@ # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -PATH="BINDIR:$PATH"; export PATH - version="zmore (gzip) @VERSION@ -Copyright (C) 2006 Free Software Foundation, Inc. +Copyright (C) 2010-2018 Free Software Foundation, Inc. This is free software. You may redistribute copies of it under the terms of -the GNU General Public License . +the GNU General Public License . There is NO WARRANTY, to the extent permitted by law. Written by Jean-loup Gailly." -usage="Usage: zmore [OPTION]... [FILE]... +usage="Usage: $0 [OPTION]... [FILE]... Like 'more', but operate on the uncompressed contents of any compressed FILEs. Report bugs to ." -if test "`echo -n a`" = "-n a"; then - # looks like a SysV system: - n1=''; n2='\c' -else - n1='-n'; n2='' -fi -oldtty=`stty -g 2>/dev/null` -if stty -cbreak 2>/dev/null; then - cb='cbreak'; ncb='-cbreak' -else - # 'stty min 1' resets eof to ^a on both SunOS and SysV! - cb='min 1 -icanon'; ncb='icanon eof ^d' -fi -if test $? -eq 0 && test -n "$oldtty"; then - trap 'stty $oldtty 2>/dev/null; exit' 0 2 3 5 10 13 15 -else - trap 'stty $ncb echo 2>/dev/null; exit' 0 2 3 5 10 13 15 -fi +case $1 in + --h*) printf '%s\n' "$usage" || exit 1; exit;; + --v*) printf '%s\n' "$version" || exit 1; exit;; + --) shift;; + -?*) printf >&2 '%s\n' "$0: $1: unknown option; try '$0 --help' for help" + exit 1;; +esac if test $# = 0; then if test -t 0; then - echo "$usage" - else - gzip -cdfq | eval more + printf >&2 '%s\n' "$0: missing operands; try '$0 --help' for help" + exit 1 fi -else - FIRST=1 - for FILE - do - case $FILE in - --h*) exec echo "$usage";; - --v*) exec echo "$version";; - esac - - < "$FILE" || continue - if test $FIRST -eq 0; then - echo $n1 "--More--(Next file: $FILE)$n2" - stty $cb -echo 2>/dev/null - ANS=`dd bs=1 count=1 2>/dev/null` - stty $ncb echo 2>/dev/null - echo " " - case "$ANS" in - [eq]) exit;; - esac - fi - if test "$ANS" != 's'; then - echo "------> $FILE <------" - gzip -cdfq -- "$FILE" | more - fi - if test -t 1; then - FIRST=0 - fi - done + set -- - fi + +for FILE +do + test $# -lt 2 || + printf '::::::::::::::\n%s\n::::::::::::::\n' "$FILE" || break + gzip -cdfq -- "$FILE" +done 2>&1 | eval ${PAGER-more}