gzip 1.2.4
authorJean-loup Gailly <jloup@chorus.fr>
Mon, 16 Aug 1993 22:32:16 +0000 (22:32 +0000)
committerJean-loup Gailly <jloup@chorus.fr>
Mon, 16 Aug 1993 22:32:16 +0000 (22:32 +0000)
zdiff.in [new file with mode: 0644]

diff --git a/zdiff.in b/zdiff.in
new file mode 100644 (file)
index 0000000..110454c
--- /dev/null
+++ b/zdiff.in
@@ -0,0 +1,70 @@
+:
+#!/bin/sh
+# sh is buggy on RS/6000 AIX 3.2. Replace above line with #!/bin/ksh
+
+# Zcmp and zdiff are used to invoke the cmp or the  diff  pro-
+# gram  on compressed files.  All options specified are passed
+# directly to cmp or diff.  If only 1 file is specified,  then
+# the  files  compared  are file1 and an uncompressed file1.gz.
+# If two files are specified, then they are  uncompressed  (if
+# necessary) and fed to cmp or diff.  The exit status from cmp
+# or diff is preserved.
+
+PATH="BINDIR:$PATH"; export PATH
+prog=`echo $0 | sed 's|.*/||'`
+case "$prog" in
+  *cmp) comp=${CMP-cmp}   ;;
+  *)    comp=${DIFF-diff} ;;
+esac
+
+OPTIONS=
+FILES=
+for ARG
+do
+    case "$ARG" in
+    -*)        OPTIONS="$OPTIONS $ARG";;
+     *)        if test -f "$ARG"; then
+            FILES="$FILES $ARG"
+        else
+            echo "${prog}: $ARG not found or not a regular file"
+           exit 1
+        fi ;;
+    esac
+done
+if test -z "$FILES"; then
+       echo "Usage: $prog [${comp}_options] file [file]"
+       exit 1
+fi
+set $FILES
+if test $# -eq 1; then
+       FILE=`echo "$1" | sed 's/[-.][zZtga]*$//'`
+       gzip -cd "$1" | $comp $OPTIONS - "$FILE"
+       STAT="$?"
+
+elif test $# -eq 2; then
+       case "$1" in
+        *[-.]gz* | *[-.][zZ] | *.t[ga]z)
+                case "$2" in
+               *[-.]gz* | *[-.][zZ] | *.t[ga]z)
+                       F=`echo "$2" | sed 's|.*/||;s|[-.][zZtga]*||'`
+                        gzip -cdfq "$2" > /tmp/"$F".$$
+                        gzip -cdfq "$1" | $comp $OPTIONS - /tmp/"$F".$$
+                        STAT="$?"
+                       /bin/rm -f /tmp/"$F".$$;;
+
+                *)      gzip -cdfq "$1" | $comp $OPTIONS - "$2"
+                        STAT="$?";;
+                esac;;
+        *)      case "$2" in
+               *[-.]gz* | *[-.][zZ] | *.t[ga]z)
+                        gzip -cdfq "$2" | $comp $OPTIONS "$1" -
+                        STAT="$?";;
+                *)      $comp $OPTIONS "$1" "$2"
+                        STAT="$?";;
+                esac;;
+       esac
+        exit "$STAT"
+else
+       echo "Usage: $prog [${comp}_options] file [file]"
+       exit 1
+fi