diff options
Diffstat (limited to 'dotfiles/system/.profile.d/extract.sh')
| -rw-r--r-- | dotfiles/system/.profile.d/extract.sh | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/dotfiles/system/.profile.d/extract.sh b/dotfiles/system/.profile.d/extract.sh new file mode 100644 index 0000000..5fce587 --- /dev/null +++ b/dotfiles/system/.profile.d/extract.sh @@ -0,0 +1,27 @@ +#!/bin/sh + +# extract.sh +# Craig Jennings <c@cjennings.net> +# convenience extraction function + +## EXTRACT + +extract () { + if [ -f "$1" ] ; then + case "$1" in + *.tar.bz2) tar xjf "$1" ;; + *.tar.gz) tar xzf "$1" ;; + *.bz2) bunzip2 "$1" ;; + *.rar) rar x "$1" ;; + *.gz) gunzip "$1" ;; + *.tar) tar xf "$1" ;; + *.tbz2) tar xjf "$1" ;; + *.tgz) tar xzf "$1" ;; + *.zip) unzip "$1" ;; + *.Z) uncompress "$1" ;; + *) echo "$1 cannot be extracted via extract()" ;; + esac + else + echo "$1 is not a valid file" + fi +} |
