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.
81 lines
1.0 KiB
81 lines
1.0 KiB
8 years ago
|
#!/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
|