fix "extract", handle pax files

This commit is contained in:
David Majnemer 2010-07-01 10:33:34 -07:00
parent e7fd9d9270
commit cbc8441710

View file

@ -51,42 +51,27 @@ extract ()
*.tar)
tar xf "${1}"
;;
*.gz|*.z)
gzip -dc "${1}" > `basename "${1%.*}"`
*.tar.bz2|*.tbz2|*.tbz)
bzip2 -dc "${1}" | tar xf -
;;
*.tar.gz|*.tgz|*.tz)
gzip -dc "${1}" | tar xf -
;;
*.Z)
uncompress -c "${1}" > `basename "${1%.*}"`
*.tar.lzma|*.tlz)
lzma -dc "${1}" | tar xf -
;;
*.tar.xz|*.txz)
xz -dc "${1}" | tar xf -
;;
*.tar.z|*.tar.Z|*.taz)
uncompress -c "${1}" | tar xf -
;;
*.bz2|*.bz)
bzip2 -dc "${1}" > `basename "${1%.*}"`
;;
*.tar.bz2|*.tbz2|*.tbz)
bzip2 -dc "${1}" | tar xf -
;;
*.7z)
7zr x "${1}"
;;
*.tar.7z|*.t7z)
7zr x -so "${1}" | tar xf -
;;
*.lzma)
lzma -dc "${1}" > `basename "${1%.*}"`
;;
*.tar.lzma|*.tlz)
lzma -dc "${1}" | tar xf -
;;
*.xz)
xz -dc "${1}" > `basename "${1%.*}"`
;;
*.tar.xz|*.txz)
xz -dc "${1}" | tar xf -
;;
*.a|*.deb)
ar x "${1}"
;;
@ -105,6 +90,12 @@ extract ()
*.lha|*.lzh)
lha xqf "${1}"
;;
*.pax)
pax -rf "${1}"
;;
*.pax.bz2)
bzip2 -dc "${1}" | pax -rf -
;;
*.rar)
unrar x -idq "${1}"
;;
@ -117,6 +108,21 @@ extract ()
*.zoo)
zoo x "${1}"
;;
*.bz2|*.bz)
bzip2 -dc "${1}" > `basename "${1%.*}"`
;;
*.gz|*.z)
gzip -dc "${1}" > `basename "${1%.*}"`
;;
*.xz)
xz -dc "${1}" > `basename "${1%.*}"`
;;
*.Z)
uncompress -c "${1}" > `basename "${1%.*}"`
;;
*.7z)
7zr x "${1}"
;;
*)
echo "Unable to extract '"$1"'"
return 1