Unverified Commit 4b5076b5 authored by xiagw's avatar xiagw Committed by GitHub

feat(extract): add `pbzip2` and `pixz` (#11435)

parent df658350
...@@ -30,12 +30,15 @@ EOF ...@@ -30,12 +30,15 @@ EOF
local extract_dir="${1:t:r}" local extract_dir="${1:t:r}"
local file="$1" full_path="${1:A}" local file="$1" full_path="${1:A}"
case "${file:l}" in case "${file:l}" in
(*.tar.gz|*.tgz) (( $+commands[pigz] )) && { pigz -dc "$file" | tar xv } || tar zxvf "$file" ;; (*.tar.gz|*.tgz)
(*.tar.bz2|*.tbz|*.tbz2) tar xvjf "$file" ;; (( $+commands[pigz] )) && { tar -I pigz -xvf "$file" } || tar zxvf "$file" ;;
(*.tar.bz2|*.tbz|*.tbz2)
(( $+commands[pbzip2] )) && { tar -I pbzip2 -xvf "$file" } || tar xvjf "$file" ;;
(*.tar.xz|*.txz) (*.tar.xz|*.txz)
(( $+commands[pixz] )) && { tar -I pixz -xvf "$file" } || {
tar --xz --help &> /dev/null \ tar --xz --help &> /dev/null \
&& tar --xz -xvf "$file" \ && tar --xz -xvf "$file" \
|| xzcat "$file" | tar xvf - ;; || xzcat "$file" | tar xvf - } ;;
(*.tar.zma|*.tlz) (*.tar.zma|*.tlz)
tar --lzma --help &> /dev/null \ tar --lzma --help &> /dev/null \
&& tar --lzma -xvf "$file" \ && tar --lzma -xvf "$file" \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment