Combina archivos por nombre y zip

0

¿Cómo puedo automáticamente comprimir archivos ZIP con los mismos nombres de archivo (diferentes extensiones) en un ZIP?

Por ejemplo, tengo cuatro archivos

  • king.jpg
  • king.txt
  • queen.jpg
  • queen.txt

lo que llevaría a

  • king.zip (que contiene king.jpg y king.txt)
  • queen.zip (que contiene queen.jpg y queen.txt)
pregunta sukema 15.12.2015 - 03:36

2 respuestas

0

Puedes hacerlo fácilmente con un breve fragmento de bash.

p=SOME.CRAZY.STUFF
for i in *; do
    f="${i%.*}"
    if [[ "$p" != "$f" ]]; then
        zip "$f" "$f".*
    fi
    p="$f"
done

Si no está familiarizado con Terminal / bash y no planea usar esto con demasiada frecuencia, puede hacer lo siguiente para usarlo:

  • crea una carpeta donde muevas todos tus reyes y reinas a (y nada más)
  • abra Terminal, escriba cd seguido de un espacio, arrastre la carpeta que acaba de crear a la ventana de Terminal (suelte el botón del mouse una vez que aparezca una cruz verde) y presione Enter
  • escriba p=SOME.CRAZY.STUFF seguido de Ingresar
  • tipo (o incluso mejor copiar / pegar)

    for i in *; do f="${i%.*}"; if [[ "$p" != "$f" ]]; then zip "$f" "$f".*; fi; p="$f"; done
    

    de nuevo seguido de Enter

  • (suponiendo que no se muestre ningún mensaje de error, etc.) salga de Terminal otra vez
respondido por el nohillside 15.12.2015 - 09:22
-2

puedes poner ambos en una carpeta y comprimir esa carpeta ...

de lo contrario, necesitas usar tar, que es un poco más complicado ...

    
respondido por el frank ankersly 15.12.2015 - 06:52

Lea otras preguntas en las etiquetas