Unix zip: zipar várias pastas em um arquivo zip sem criar uma pasta contendo top

1

Eu tenho uma pasta como esta:

-resources

--graphics

--sounds

Eu quero compactar a pasta graphics e sounds em um arquivo .zip chamado resources.zip, que usarei

zip -r resources.zip graphics/ sounds/

mas quando eu descompactar resources.zip, em / home / me, será assim:

-home

--me

---resources

----graphics

----sounds

Eu não quero a pasta de recursos criada ao descompactar, posso fazer alguma coisa ao compactar para conseguir isso?

    
por CarmeloS 21.02.2014 / 10:32

1 resposta

1

Sim, esse é o comportamento padrão de unzip . Infelizmente, não há como ignorar seletivamente o caminho original dos arquivos compactados. Você pode, no entanto, dizer descompactar para ignorar qualquer caminho:

unzip -j resources.zip

que descompactaria todos os arquivos no $ pwd. Isso provavelmente não é o que você quer. Você pode conseguir o resultado desejado zipando assim:

zip -j resources.zip ~/resources/*

Isto criará um arquivo zip que salvará todos os arquivos e diretórios em ~ / resources /, mas irá danificar o caminho ~ / resources /, portanto, na extração, você somente obterá sons / e gráficos / .

    
por 21.02.2014 / 13:09

Tags