Descomprima o descomprima muchos archivos a la vez en Linux
Si tienes un directorio con docenas de archivos comprimidos o no comprimidos, puedes ejecutar un solo comando para descomprimirlos en un solo paso, gracias al poder del shell bash..
Para esta tarea, usaremos la estructura de comando de bucle for de bash. Reemplace con un nombre de variable y con un comando que genere una lista o una lista explícita.
para en
hacer
comando $;
hecho
Puede ejecutarlo en una sola línea con esta sintaxis en su lugar:
para in; do comando $; hecho
Por lo tanto, si desea desinstalar una lista de archivos, puede usar este comando. No necesariamente necesitas las citas, pero ayuda cuando los nombres de los archivos tienen espacios o algo así en ellos.
para f en * .rar; haga unrar e “$ f”; hecho
Si desea utilizar 7zip para extraer una lista de archivos:
para f en * .001; haz 7z e “$ f”; listo
O si quieres descomprimir una lista de archivos:
para f en * .zip; descomprima "$ f"; listo
Incluso podrías encadenar comandos si quisieras. Por ejemplo, si todos sus archivos zip contenían archivos .txt y desea descomprimirlos y luego mover los archivos descomprimidos a otro directorio:
para f en * .zip; descomprima "$ f"; listo; para f en * .txt; haga mv “$ f” / myfolder /; done
El shell bash es increíblemente poderoso ... esto ni siquiera aprovecha el poder, pero debería darte una buena idea de lo que es posible..