Crie o zip da pasta com o mesmo nome pela linha de comando

4

Estou criando uma pasta na qual qualquer arquivo ou pasta que chega recebe zip ped, criptografada com uma senha e movida para outra pasta, mas desejo manter o nome original da pasta que veio em vez de um nome genérico. Aqui está o meu comando:

 zip -P asdf -r ~/Desktop/output2/genericname.zip  ~/Desktop/input2

Como eu poderia fazer isso?

    
por Catlitos 28.02.2017 / 21:08

1 resposta

2

Assumindo que input2 é o nome do arquivo que você deseja zipar, e não o diretório que contém as coisas que você deseja compactar, você pode usar este for loop

for i in $HOME/Desktop/*; do echo zip -P asdf -r $HOME/Desktop/output2/$(basename "$i").zip  "$i"; done

echo é apenas para testes. Se a saída parece correta, remova echo e execute o comando novamente.

Como um script

for i in $HOME/Desktop/*; do 
   echo zip -P asdf -r $HOME/Desktop/output2/$(basename "$i").zip  "$i"
done
    
por Zanna 28.02.2017 / 21:25