1 #!/bin/sh 2 3 # Bzmore wrapped for bzip2, 4 # adapted from zmore by Philippe Troin <phil (at] fifi.org> for Debian GNU/Linux. 5 6 PATH="/usr/bin:$PATH"; export PATH 7 8 prog=`echo $0 | sed 's|.*/||'` 9 case "$prog" in 10 *less) more=less ;; 11 *) more=more ;; 12 esac 13 14 if test "`echo -n a`" = "-n a"; then 15 # looks like a SysV system: 16 n1=''; n2='\c' 17 else 18 n1='-n'; n2='' 19 fi 20 oldtty=`stty -g 2>/dev/null` 21 if stty -cbreak 2>/dev/null; then 22 cb='cbreak'; ncb='-cbreak' 23 else 24 # 'stty min 1' resets eof to ^a on both SunOS and SysV! 25 cb='min 1 -icanon'; ncb='icanon eof ^d' 26 fi 27 if test $? -eq 0 -a -n "$oldtty"; then 28 trap 'stty $oldtty 2>/dev/null; exit' 0 2 3 5 10 13 15 29 else 30 trap 'stty $ncb echo 2>/dev/null; exit' 0 2 3 5 10 13 15 31 fi 32 33 if test $# = 0; then 34 if test -t 0; then 35 echo usage: $prog files... 36 else 37 bzip2 -cdfq | eval $more 38 fi 39 else 40 FIRST=1 41 for FILE 42 do 43 if test $FIRST -eq 0; then 44 echo $n1 "--More--(Next file: $FILE)$n2" 45 stty $cb -echo 2>/dev/null 46 ANS=`dd bs=1 count=1 2>/dev/null` 47 stty $ncb echo 2>/dev/null 48 echo " " 49 if test "$ANS" = 'e' -o "$ANS" = 'q'; then 50 exit 51 fi 52 fi 53 if test "$ANS" != 's'; then 54 echo "------> $FILE <------" 55 bzip2 -cdfq "$FILE" | eval $more 56 fi 57 if test -t; then 58 FIRST=0 59 fi 60 done 61 fi 62