I always wanted this, typing paths is so annoying. I think the command line got stuck in the last millennium. So much things could be automated there, especially command completion. Why do I have to remember the stupid -xfv parameters for tar or whatever. Computers should be like magic. What could be improved: if I type "nano index." I see some index.js files but not my index.html file from my node project. Ah ok it'…
Just add this to your .[bash/zsh]rc:
ex ()
{
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) tar xjf $1 ;;
*.tar.gz) tar xzf $1 ;;
*.bz2) bunzip2 $1 ;;
*.rar) unrar x $1 ;;
*.gz) gunzip $1 ;;
*.tar) tar xf $1 ;;
*.tbz2) tar xjf $1 ;;
*.tgz) tar xzf $1 ;;
*.zip) unzip $1 ;;
*.Z) uncompress $1;;
*.7z) 7z x $1 ;;
*) echo "'$1' cannot be extracted via ex()" ;;
esac
else
echo "'$1' is not a valid file"
fi
}