diff options
author | Todd C. Miller <millert@cvs.openbsd.org> | 2003-06-23 19:04:25 +0000 |
---|---|---|
committer | Todd C. Miller <millert@cvs.openbsd.org> | 2003-06-23 19:04:25 +0000 |
commit | 4e22c3b1b31fc4dd225bc22d0e16133481add6fe (patch) | |
tree | 10d712df0f6d7131eabf95774f9daaa9ddfa128e /usr.bin/compress/zmore | |
parent | 28f3c3e5c954c2a9045002b84dff2c0a67167d7b (diff) |
Make zmore read from stdin when no files are specified and try to
ascertain wether or not we have a tty. Also add a skeleton manual page.
Diffstat (limited to 'usr.bin/compress/zmore')
-rw-r--r-- | usr.bin/compress/zmore | 43 |
1 files changed, 23 insertions, 20 deletions
diff --git a/usr.bin/compress/zmore b/usr.bin/compress/zmore index 7066a663929..0f21517de69 100644 --- a/usr.bin/compress/zmore +++ b/usr.bin/compress/zmore @@ -37,32 +37,35 @@ while test $# -ne 0; do esac done +# No files means read from stdin +# XXX - cannot distinguish between gzip or compress, assume gzip if [ $# -eq 0 ]; then - echo "usage: zmore filename ..." - exit 1 + compress -cdfgq 2>&1 | ${PAGER-more} $flags + exit 0 fi oterm=`stty -g 2>/dev/null` while test $# -ne 0; do - gzip -cdfq "$1" 2>&1 | ${PAGER-more} $flags + compress -cdfq "$1" 2>&1 | ${PAGER-more} $flags prev="$1" shift - test $# -eq 0 && break - #echo -n "--More--(Next file: $1)" - echo -n "$prev (END) - Next: $1 " - trap "stty $oterm 2>/dev/null" 0 1 2 3 13 15 - stty cbreak -echo 2>/dev/null - REPLY=`dd bs=1 count=1 2>/dev/null` - stty $oterm 2>/dev/null - trap - 0 1 2 3 13 15 - echo - case "$REPLY" in - s) - shift - ;; - e|q) - break - ;; - esac + if tty -s && test -n "$oterm" -a $# -gt 0; then + #echo -n "--More--(Next file: $1)" + echo -n "$prev (END) - Next: $1 " + trap "stty $oterm 2>/dev/null" 0 1 2 3 13 15 + stty cbreak -echo 2>/dev/null + REPLY=`dd bs=1 count=1 2>/dev/null` + stty $oterm 2>/dev/null + trap - 0 1 2 3 13 15 + echo + case "$REPLY" in + s) + shift + ;; + e|q) + break + ;; + esac + fi done exit 0 |