Script updates for better portability
authorandersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277>
Tue, 12 Dec 2000 16:49:12 +0000 (16:49 +0000)
committerandersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277>
Tue, 12 Dec 2000 16:49:12 +0000 (16:49 +0000)
git-svn-id: svn://busybox.net/trunk/busybox@1430 69ca8d6d-28ef-0310-b511-8ec308f3f277

examples/undeb
examples/unrpm
scripts/undeb
scripts/unrpm

index fa2bcb3..a72e1e2 100644 (file)
@@ -1,5 +1,9 @@
 #!/bin/sh
 #
+# This should work with the GNU version of tar and gzip!
+# This should work with the bash or ash shell!
+# Requires the programs (ar, tar, gzip, and the pager more or less).
+#
 usage() {
 echo "Usage: undeb -c package.deb            <Print control file info>"
 echo "       undeb -l package.deb            <List contents of deb package>"
@@ -25,12 +29,12 @@ elif [ "$1" = "-l" ]; then
 exist
 type more >/dev/null 2>&1 && pager=more
 type less >/dev/null 2>&1 && pager=less
-trap "" 13
-(ar -p $deb control.tar.gz | gunzip -c | tar -x -O control ; echo -e "\nPress enter to scroll, q to Quit!\n" ; ar -p $deb data.tar.gz | gunzip -c | tar -t -v 2>/dev/null) | $pager 
+[ "$pager" = "" ] && echo "No pager found!" && exit
+(ar -p $deb control.tar.gz | tar -xzO *control ; echo -e "\nPress enter to scroll, q to Quit!\n" ; ar -p $deb data.tar.gz | tar -tzv) | $pager 
 exit
 elif [ "$1" = "-c" ]; then
 exist
-ar -p $deb control.tar.gz | gunzip -c | tar -x -O control  
+ar -p $deb control.tar.gz | tar -xzO *control  
 exit
 elif [ "$1" = "-x" ]; then
 exist
@@ -40,7 +44,7 @@ elif [ ! -d "$3" ]; then
 echo "No such directory $3!"
 exit
 fi
-ar -p $deb data.tar.gz | gunzip | (cd $3 ; tar -x -v -f -) || exit 
+ar -p $deb data.tar.gz | tar -xzvpf - -C $3 || exit 
 echo
 echo "Extracted $deb to $3!"
 exit
index 2cd1aa9..9ab37be 100644 (file)
@@ -1,5 +1,9 @@
 #!/bin/sh
 #
+# This should work with the GNU version of cpio and gzip!
+# This should work with the bash or ash shell!
+# Requires the programs (cpio, gzip, and the pager more or less).
+#
 usage() {
 echo "Usage: unrpm -l package.rpm            <List contents of rpm package>"
 echo "       unrpm -x package.rpm /foo/boo   <Extract rpm package to this directory,"
@@ -24,7 +28,8 @@ elif [ "$1" = "-l" ]; then
 exist
 type more >/dev/null 2>&1 && pager=more
 type less >/dev/null 2>&1 && pager=less
-(echo -e "\nPress enter to scroll, q to Quit!\n" ; rpmunpack < $rpm | gunzip -c | cpio -tvf --quiet) | $pager 
+[ "$pager" = "" ] && echo "No pager found!" && exit
+(echo -e "\nPress enter to scroll, q to Quit!\n" ; rpmunpack < $rpm | gzip -dc | cpio -tv --quiet) | $pager 
 exit
 elif [ "$1" = "-x" ]; then
 exist
@@ -34,7 +39,7 @@ elif [ ! -d "$3" ]; then
 echo "No such directory $3!"
 exit
 fi
-rpmunpack < $rpm | gunzip | (cd $3 ; cpio -idmuv) || exit 
+rpmunpack < $rpm | gzip -d | (umask 0 ; cd $3 ; cpio -idmuv) || exit 
 echo
 echo "Extracted $rpm to $3!"
 exit
index fa2bcb3..a72e1e2 100644 (file)
@@ -1,5 +1,9 @@
 #!/bin/sh
 #
+# This should work with the GNU version of tar and gzip!
+# This should work with the bash or ash shell!
+# Requires the programs (ar, tar, gzip, and the pager more or less).
+#
 usage() {
 echo "Usage: undeb -c package.deb            <Print control file info>"
 echo "       undeb -l package.deb            <List contents of deb package>"
@@ -25,12 +29,12 @@ elif [ "$1" = "-l" ]; then
 exist
 type more >/dev/null 2>&1 && pager=more
 type less >/dev/null 2>&1 && pager=less
-trap "" 13
-(ar -p $deb control.tar.gz | gunzip -c | tar -x -O control ; echo -e "\nPress enter to scroll, q to Quit!\n" ; ar -p $deb data.tar.gz | gunzip -c | tar -t -v 2>/dev/null) | $pager 
+[ "$pager" = "" ] && echo "No pager found!" && exit
+(ar -p $deb control.tar.gz | tar -xzO *control ; echo -e "\nPress enter to scroll, q to Quit!\n" ; ar -p $deb data.tar.gz | tar -tzv) | $pager 
 exit
 elif [ "$1" = "-c" ]; then
 exist
-ar -p $deb control.tar.gz | gunzip -c | tar -x -O control  
+ar -p $deb control.tar.gz | tar -xzO *control  
 exit
 elif [ "$1" = "-x" ]; then
 exist
@@ -40,7 +44,7 @@ elif [ ! -d "$3" ]; then
 echo "No such directory $3!"
 exit
 fi
-ar -p $deb data.tar.gz | gunzip | (cd $3 ; tar -x -v -f -) || exit 
+ar -p $deb data.tar.gz | tar -xzvpf - -C $3 || exit 
 echo
 echo "Extracted $deb to $3!"
 exit
index 2cd1aa9..9ab37be 100644 (file)
@@ -1,5 +1,9 @@
 #!/bin/sh
 #
+# This should work with the GNU version of cpio and gzip!
+# This should work with the bash or ash shell!
+# Requires the programs (cpio, gzip, and the pager more or less).
+#
 usage() {
 echo "Usage: unrpm -l package.rpm            <List contents of rpm package>"
 echo "       unrpm -x package.rpm /foo/boo   <Extract rpm package to this directory,"
@@ -24,7 +28,8 @@ elif [ "$1" = "-l" ]; then
 exist
 type more >/dev/null 2>&1 && pager=more
 type less >/dev/null 2>&1 && pager=less
-(echo -e "\nPress enter to scroll, q to Quit!\n" ; rpmunpack < $rpm | gunzip -c | cpio -tvf --quiet) | $pager 
+[ "$pager" = "" ] && echo "No pager found!" && exit
+(echo -e "\nPress enter to scroll, q to Quit!\n" ; rpmunpack < $rpm | gzip -dc | cpio -tv --quiet) | $pager 
 exit
 elif [ "$1" = "-x" ]; then
 exist
@@ -34,7 +39,7 @@ elif [ ! -d "$3" ]; then
 echo "No such directory $3!"
 exit
 fi
-rpmunpack < $rpm | gunzip | (cd $3 ; cpio -idmuv) || exit 
+rpmunpack < $rpm | gzip -d | (umask 0 ; cd $3 ; cpio -idmuv) || exit 
 echo
 echo "Extracted $rpm to $3!"
 exit