Combina file per nome e zip

0

Come faccio a cancellare automaticamente i file ZIP con gli stessi nomi di file (estensioni diverse) in uno ZIP?

Ad esempio, ho quattro file

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

che avrebbe portato a

  • king.zip (contenente king.jpg e king.txt)
  • queen.zip (contenente queen.jpg e queen.txt)
posta sukema 15.12.2015 - 03:36
fonte

2 risposte

0

Puoi farlo facilmente con un breve snippet di bash.

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

Se non hai familiarità con Terminal / bash e non hai intenzione di usarlo troppo spesso, puoi fare quanto segue per usarlo:

  • crea una cartella in cui sposti tutti i tuoi re e le tue regine (e nient'altro)
  • apri Terminale, digita cd seguito da uno spazio, trascina la cartella appena creata nella finestra Terminale (rilascia il pulsante del mouse quando appare una croce verde) e premi Invio
  • digita p=SOME.CRAZY.STUFF seguito da Invio
  • scrivi (o ancora meglio copia / incolla)

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

    di nuovo seguito da Invio

  • (supponendo che non sia stato visualizzato nessun messaggio di errore ecc.) uscire nuovamente dal terminale
risposta data 15.12.2015 - 09:22
fonte
-2

puoi mettere entrambi in una cartella e comprimere quella cartella ..

altrimenti devi usare tar, che è un po 'più complicato ...

    
risposta data 15.12.2015 - 06:52
fonte

Leggi altre domande sui tag