1
0
Fork 0
mirror of https://git.tukaani.org/xz.git synced 2024-04-04 12:36:23 +02:00
xz-archive/src/scripts/xzmore.in
Lasse Collin 43ce4ea7c7 Scripts: Put /usr/xpg4/bin to the beginning of PATH on Solaris.
This adds a configure option --enable-path-for-scripts=PREFIX
which defaults to empty except on Solaris it is /usr/xpg4/bin
to make POSIX grep and others available. The Solaris case had
been documented in INSTALL with a manual fix but it's better
to do this automatically since it is needed on most Solaris
systems anyway.

Thanks to Daniel Richard G.
2019-09-24 23:02:40 +03:00

79 lines
2.1 KiB
Text

#!@POSIX_SHELL@
# Copyright (C) 2001, 2002, 2007 Free Software Foundation
# Copyright (C) 1992, 1993 Jean-loup Gailly
# Modified for XZ Utils by Andrew Dudman and Lasse Collin.
# 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
# (at your option) any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
@enable_path_for_scripts@
#SET_PATH - This line is a placeholder to ease patching this script.
# Instead of unsetting XZ_OPT, just make sure that xz will use file format
# autodetection. This way memory usage limit and thread limit can be
# specified via XZ_OPT.
xz='@xz@ --format=auto'
version='xzmore (@PACKAGE_NAME@) @VERSION@'
usage="Usage: ${0##*/} [OPTION]... [FILE]...
Like 'more', but operate on the uncompressed contents of xz compressed FILEs.
Report bugs to <@PACKAGE_BUGREPORT@>."
case $1 in
--help) echo "$usage" || exit 2; exit;;
--version) echo "$version" || exit 2; exit;;
esac
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
if test $# = 0; then
if test -t 0; then
echo "$usage"; exit 1
else
$xz -cdfq | eval "${PAGER:-more}"
fi
else
FIRST=1
for FILE; do
< "$FILE" || continue
if test $FIRST -eq 0; then
printf "%s--More--(Next file: %s)" "" "$FILE"
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 <------"
$xz -cdfq -- "$FILE" | eval "${PAGER:-more}"
fi
if test -t 1; then
FIRST=0
fi
done
fi