*edit: Or you can use "atool". A script that covers the same functionality as the code below but supports even more complex operations. http://www.nongnu.org/atool/
Add this code to your .bashrc:
From now on you can extract the listes archives simply by calling "extract archive".extract () {if [ -f $1 ] ; thencase $1 in*.tar.bz2) tar xvjf $1 ;;*.tar.gz) tar xvzf $1 ;;*.bz2) bunzip2 $1 ;;*.rar) unrar x $1 ;;*.gz) gunzip $1 ;;*.tar) tar xvf $1 ;;*.tbz2) tar xvjf $1 ;;*.tgz) tar xvzf $1 ;;*.zip) unzip $1 ;;*.Z) uncompress $1 ;;*.7z) 7z x $1 ;;*) echo "don't know how to extract '$1'..." ;;esacelseecho "'$1' is not a valid file!"fi}