Tengo un directorio con archivos comprimidos que contienen imágenes .jpg, .png, .gif. Quiero descomprimir cada archivo tomando solo las imágenes y ponerlas en una carpeta con el nombre del archivo.descomprimir solo la extensión específica
Así:
files/archive1.zip
files/archive2.zip
files/archive3.zip
files/archive4.zip
archive1.zip abierto - Tome sunflower.jpg, rose_sun.gif. Haga una carpeta files/archive1/y agregue las imágenes a esa carpeta, entonces files/archive1/folder1.jpg, files/archive1/rose_sun.gif. Haz esto a cada archivo.
Realmente no sé cómo se puede hacer, todas las sugerencias son bienvenidas. Tengo más de 600 archivos y una solución automática sería un salvavidas, preferiblemente una solución de Linux.
Esta sería una excelente solución, excepto que el directorio temporal termina desperdiciando IO y recursos del sistema. Debe agregar comodines a la llamada descomprimir. (Agregue '* .jpg' '* .png' '* .gif' al final.) Además, debe evitar copiar el archivo zip, y en su lugar usar "descomprimir ../${newfile}/zip". – MiffTheFox
No creo que el nivel de eficiencia sea una preocupación real aquí, esto me parece una operación única (o una que no se haría con la suficiente frecuencia como para justificar una sobreingeniería). El resultado final es lo que OP quería, los archivos gráficos en un directorio específico basado en el nombre del archivo. – paxdiablo
sí, esto sería una cosa de una vez :), supongo que estoy probando todas estas soluciones en este momento, localmente, que lo probaré en una mayor cantidad de cremalleras en el servidor – vache