Necesito comprimir 80,000 archivos en múltiples archivos zip. Este es el comando que uso:
zip -s 200M photos_test/*
Sin embargo me sale el siguiente error:
-bash: /usr/bin/zip: Argument list too long
¿Qué puedo hacer para resolver el problema, además de dividir manualmente los archivos de la carpeta?
Gracias
compression
zip
recursive
arguments
aneuryzm
fuente
fuente

-bash: /usr/bin/zip: Argument list too longpuede causar en el caso: 1- por no usar el-rinterruptor, 2- hay demasiados archivos para archivar. Entonces, en el primer caso, la respuesta de @ Mat es verdadera y en el segundo caso, la respuesta de @ IgnacioVazquez-Abrams es verdadera.Respuestas:
Si desea todo el directorio, simplemente puede usar el
-rinterruptor:Eso incluirá todos los subdirectorios de
photos_testaunque.fuente
El problema parece ser la expansión del "*". Utilice el nombre de la carpeta o ".":
Si desea incluir la carpeta raíz dentro del zip:
Si no desea incluir la carpeta raíz dentro del zip:
fuente
fuente
find . -mindepth 1 -maxdepth -name '*.json' | zip {YOURZIPFILENAME}.zip -@si no necesita dividir y desea seleccionar archivos por extensión.ls photos_test | zip -s 200M -@ photos-@hará que zip lea una lista de archivos de stdin|tubo voluntad una salida delsen la entrada dezipcomandoman zip:fuente