5acfdf5c9071a2f57acbcdbbc1a5e14d96c181fd

Author
Robby Russell <robby@planetargon.com>
Committer
Robby Russell <robby@planetargon.com>
Date

Message

Merge pull request #2871 from wrboyce/extract-pigz

use pigz if available in extract plugin

Diff

 1diff --git a/plugins/extract/extract.plugin.zsh b/plugins/extract/extract.plugin.zsh
 2index a6e16ddf7f352ffdcd10097586eae199f52cd23b..898d3d36ecee0801dcec271804040acdc00465e0 100644
 3--- a/plugins/extract/extract.plugin.zsh
 4+++ b/plugins/extract/extract.plugin.zsh
 5@@ -38,7 +38,7 @@ function extract() {
 6     file_name="$( basename "$1" )"
 7     extract_dir="$( echo "$file_name" | sed "s/\.${1##*.}//g" )"
 8     case "$1" in
 9-      (*.tar.gz|*.tgz) tar xvzf "$1" ;;
10+      (*.tar.gz|*.tgz) [ -z $commands[pigz] ] && tar zxvf "$1" || pigz -dc "$1" | tar xv ;;
11       (*.tar.bz2|*.tbz|*.tbz2) tar xvjf "$1" ;;
12       (*.tar.xz|*.txz) tar --xz --help &> /dev/null \
13         && tar --xz -xvf "$1" \
14@@ -47,7 +47,7 @@ function extract() {
15         && tar --lzma -xvf "$1" \
16         || lzcat "$1" | tar xvf - ;;
17       (*.tar) tar xvf "$1" ;;
18-      (*.gz) gunzip "$1" ;;
19+      (*.gz) [ -z $commands[pigz] ] && gunzip "$1" || pigz -d "$1" ;;
20       (*.bz2) bunzip2 "$1" ;;
21       (*.xz) unxz "$1" ;;
22       (*.lzma) unlzma "$1" ;;