Fixed extracting of archive content.

The command "Extract the contents of a compressed tar file"
fails if file name contains spaces.
Fixed duplcated pattern.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
This commit is contained in:
Andrew Borodin 2010-02-11 11:46:46 +00:00
parent fda1fba5ef
commit 83205ba97e
2 changed files with 33 additions and 17 deletions

View File

@ -222,33 +222,33 @@ U Uudecode marked news articles (needs work)
fi
echo "Please test the output file before deleting anything."
=+ f \.tar\.gz$ | f \.tar\.z$ | f \.tgz$ | f \.tpz$ | f \.tar\.lz$ | f \.tar\.lzma$ | f \.tar\.lz$ | f \.tar\.7z$ | f \.tar\.xz$ | f \.tar\.Z$| f \.tar\.bz2$ & t r
=+ f \.tar\.gz$ | f \.tar\.z$ | f \.tgz$ | f \.tpz$ | f \.tar\.lz$ | f \.tar\.lzma$ | f \.tar\.7z$ | f \.tar\.xz$ | f \.tar\.Z$ | f \.tar\.bz2$ & t r
x Extract the contents of a compressed tar file
unset PRG
case %f in
*.tar.bz2)
PRG="bunzip2 -c %f"
PRG="bunzip2 -c"
;;
*.tar.gz|*.tar.z|*.tgz|*.tpz|*.tar.Z)
PRG="gzip -dc %f"
PRG="gzip -dc"
;;
*.tar.lzma)
PRG="lzma -dc %f"
PRG="lzma -dc"
;;
*.tar.lz)
PRG="lzip -dc %f"
PRG="lzip -dc"
;;
*.tar.xz)
PRG="xz -dc %f"
PRG="xz -dc"
;;
*.tar.7z)
PRG="7za e -so %f"
PRG="7za e -so"
;;
*)
exit 1
;;
esac
$PRG | tar xvf -
$PRG %f | tar xvf -
= t r
+ ! t t

View File

@ -184,17 +184,33 @@ U Уудекодирај означени чланак вести (тре
fi
echo "Молим да проверите излазну датотеку пре било каквог брисања."
=+ f \.tar\.gz$ | f \.tar\.z$ | f \.tgz$ | f \.tpz$ | f \.tar\.Z$| f \.tar\.bz2$ & t r
=+ f \.tar\.gz$ | f \.tar\.z$ | f \.tgz$ | f \.tpz$ | f \.tar\.lz$ | f \.tar\.lzma$ | f \.tar\.7z$ | f \.tar\.xz$ | f \.tar\.Z$ | f \.tar\.bz2$ & t r
x Издвој садржај компримоване датотеке врсте `tar'
unset EXT
case %f in
*.tar.bz2) EXT=tar_bz2;;
unset PRG
case %f in
*.tar.bz2)
PRG="bunzip2 -c"
;;
*.tar.gz|*.tar.z|*.tgz|*.tpz|*.tar.Z)
PRG="gzip -dc"
;;
*.tar.lzma)
PRG="lzma -dc"
;;
*.tar.lz)
PRG="lzip -dc"
;;
*.tar.xz)
PRG="xz -dc"
;;
*.tar.7z)
PRG="7za e -so"
;;
*)
exit 1
;;
esac
if [ "$EXT" = "tar_bz2" ]; then
bunzip2 -c %f | tar xvf -
else
gzip -dc %f | tar xvf -
fi
$PRG %f | tar xvf -
= t r
+ ! t t