Extraer un archivo comprimido que tengamos es una tarea muy fácil. Simplemente abrimos el gestor de archivos y haciendo click derecho sobre él nos mostrará un menú en el que tendremos la opción de descomprimirlo. Pero si quieres hacerlo desde la consola la cosa cambia, ya que cada formato usa un comando diferente y no son precisamente intuitivos.

Este pequeño script en shell que os vamos a mostrar es reconoce el tipo de archivo gracias a su extensión y los descomprime con la herramienta adecuada. Si utilizas Manjaro esta utilidad viene incluida en el archivo por defecto .bashrc, y si no, solo tienes que copiar el siguiente código al final del archivo, que se encuentra en tu directorio personal.

# # ex - archive extractor
# # usage: ex
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
}

Su uso es muy sencillo. Simplemente ejecutamos ex seguido del nombre del archivo a descomprimir.

ex archivo.zip