a5c383258b760ad1c34d550edb86d7d63e8f5877
- Author
- Sorin Ionescu <sorin.ionescu@gmail.com>
- Committer
- Sorin Ionescu <sorin.ionescu@gmail.com>
- Date
Message
Handle tar.xz and tar.lzma better (credit: @gwjo).
Diff
1diff --git a/plugins/extract/extract.plugin.zsh b/plugins/extract/extract.plugin.zsh
2index c58692fbfd66b794b90069aae18d14b6e19f93bb..8cc17f7d4be725da84afaf018cb8343e3048ad5d 100644
3--- a/plugins/extract/extract.plugin.zsh
4+++ b/plugins/extract/extract.plugin.zsh
5@@ -2,7 +2,7 @@
6 # FILE: extract.plugin.zsh
7 # DESCRIPTION: oh-my-zsh plugin file.
8 # AUTHOR: Sorin Ionescu (sorin.ionescu@gmail.com)
9-# VERSION: 1.0.0
10+# VERSION: 1.0.1
11 # ------------------------------------------------------------------------------
12
13
14@@ -40,10 +40,12 @@ function extract() {
15 case "$1" in
16 (*.tar.gz|*.tgz) tar xvzf "$1" ;;
17 (*.tar.bz2|*.tbz|*.tbz2) tar xvjf "$1" ;;
18- (*.tar.xz|*.txz) tar xvJf "$1" ;;
19- # (*.tar.xz|*.txz) xzcat "$1" | tar xvf - ;;
20- (*.tar.lzma|*.tlz) tar --lzma -xvf "$1" ;;
21- # (*.tar.lzma|*.tlz) lzcat "$1" | tar xvf - ;;
22+ (*.tar.xz|*.txz) tar --xz --help &> /dev/null \
23+ && tar --xz -xvf "$1" \
24+ || xzcat "$1" | tar xvf - ;;
25+ (*.tar.zma|*.tlz) tar --lzma --help &> /dev/null \
26+ && tar --lzma -xvf "$1" \
27+ || lzcat "$1" | tar xvf - ;;
28 (*.tar) tar xvf "$1" ;;
29 (*.gz) gunzip "$1" ;;
30 (*.bz2) bunzip2 "$1" ;;