You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
80 lines
1.0 KiB
80 lines
1.0 KiB
#!/usr/bin/bash |
|
|
|
if [ -f $1 ] ; then |
|
case $1 in |
|
*.tar.bz2) |
|
if [ "$2" ]; then |
|
tar xvjf $1 -C $2 |
|
else |
|
tar xvjf $1 |
|
fi |
|
;; |
|
*.tar.gz) |
|
if [ "$2" ]; then |
|
tar xvzf $1 -C $2 |
|
else |
|
tar xvzf $1 |
|
fi |
|
;; |
|
*.bz2) |
|
if [ "$2" ]; then |
|
bunzip -c $1 > $2 |
|
else |
|
bunzip $1 |
|
fi |
|
;; |
|
#*.rar) rar x $1 ;; |
|
*.gz) |
|
if [ "$2" ]; then |
|
gunzip -c $1 > $2 |
|
else |
|
gunzip $1 |
|
fi |
|
;; |
|
*.tar) |
|
if [ "$2" ]; then |
|
tar xvf $1 -C $2 |
|
else |
|
tar xvf $1 |
|
fi |
|
;; |
|
*.tbz2) |
|
if [ "$2" ]; then |
|
tar xvjf $1 -C $2 |
|
else |
|
tar xvjf $1 |
|
fi |
|
;; |
|
*.tgz) |
|
if [ "$2" ]; then |
|
tar xvzf $1 -C $2 |
|
else |
|
tar xvzf $1 |
|
fi |
|
;; |
|
*.zip) |
|
if [ "$2" ]; then |
|
unzip $1 -d $2 |
|
else |
|
unzip $1 |
|
fi |
|
;; |
|
*.Z) |
|
if [ "$2" ]; then |
|
uncompress -c $1 > $2 |
|
else |
|
uncompress $1 |
|
fi |
|
;; |
|
*.7z) |
|
if [ "$2" ]; then |
|
7z x $1 -o$2 |
|
else |
|
7z x $1 |
|
fi |
|
;; |
|
*) echo "don't know how to extract '$1'..." ;; |
|
esac |
|
else |
|
echo "'$1' is not a valid file!" |
|
fi
|
|
|