Tip: Extraer múltiples archivos comprimidos desde el terminal

Necesitaba extraer una cantidad de archivos 7z (1609 para ser exactos) y aunque se puede hacer facilmente desde el escritorio, quería ver cómo se podía hacer desde el terminal, lamentablemente el comando 7z no permite extraer multiples archivos, así que me puse a ver como podría hacerlo.

En primer lugar, para listar un directorio podemos usar el siguiente simple código en bash.

Esto imprimirá en el terminal todos los archivos y directorios. Para listar solo los archivos 7z lo filtramos de la siguiente forma.

Ahora para extraer los archivos cambiamos la linea donde se imprime el archivo.

Usamos el argumento -y para que no se detenga en caso de que necesite interaccion con el usuario, si queremos usarlo directamente desde la consola lo podemos ejecutar con una sola linea desde la linea de comandos.

Y eso es todo. Para extraer otros formatos de archivos puedes usar los siguientes comandos.

Gzip

Bzip2

Xz

Zip

Rar

Editado:

Angelblade nos comenta que hizo un script para descomprimir archivos con soporte para una gran cantidad de formatos, pueden revisarlo en su gist de github y para usarlo deben usar el siguiente comando.

Solo tendrían que cambiar donde dice extension por la extensión de los archivos que van a extraer.

2 thoughts on “Tip: Extraer múltiples archivos comprimidos desde el terminal

  1. angelblade say:

    En Gist, tengo una versión de “extract”, dado el archivo descomprime el archivo https://gist.github.com/angelbladex/4999350

    sería algo así

    for archivo in *.extension ; do extract $archivo; done

Deja un comentario

A %d blogueros les gusta esto: