4b5076b5ec450d30270f31a68d0299392ada042d
- Author
- xiagw <fxiaxiaoyu@gmail.com>
- Committer
- GitHub <noreply@github.com>
- Date
Message
feat(extract): add `pbzip2` and `pixz` (#11435)
Diff
1diff --git a/plugins/extract/extract.plugin.zsh b/plugins/extract/extract.plugin.zsh
2index 1112dd52f289ed34b3342750fca04ecb9d8d216f..563d88c72ff0d2c8cbd9c65fd90bce6ef156345c 100644
3--- a/plugins/extract/extract.plugin.zsh
4+++ b/plugins/extract/extract.plugin.zsh
5@@ -30,12 +30,15 @@ EOF
6 local extract_dir="${1:t:r}"
7 local file="$1" full_path="${1:A}"
8 case "${file:l}" in
9- (*.tar.gz|*.tgz) (( $+commands[pigz] )) && { pigz -dc "$file" | tar xv } || tar zxvf "$file" ;;
10- (*.tar.bz2|*.tbz|*.tbz2) tar xvjf "$file" ;;
11+ (*.tar.gz|*.tgz)
12+ (( $+commands[pigz] )) && { tar -I pigz -xvf "$file" } || tar zxvf "$file" ;;
13+ (*.tar.bz2|*.tbz|*.tbz2)
14+ (( $+commands[pbzip2] )) && { tar -I pbzip2 -xvf "$file" } || tar xvjf "$file" ;;
15 (*.tar.xz|*.txz)
16+ (( $+commands[pixz] )) && { tar -I pixz -xvf "$file" } || {
17 tar --xz --help &> /dev/null \
18 && tar --xz -xvf "$file" \
19- || xzcat "$file" | tar xvf - ;;
20+ || xzcat "$file" | tar xvf - } ;;
21 (*.tar.zma|*.tlz)
22 tar --lzma --help &> /dev/null \
23 && tar --lzma -xvf "$file" \