Adicionando arquivos descompactados a uma pasta zipada

19

Estou tentando adicionar arquivos descompactados a uma pasta já compactada existente, digamos new folder.zip . É possível usar zip -r new folder.zip após adicionar alguns arquivos descompactados a eles? Esse comando comprimirá a pasta? Existe alguma alternativa para fazer isso?

    
por boo na 13.10.2014 / 21:30

2 respostas

30

Use o sinalizador de atualização: -u

Exemplo:

zip -ur existing.zip myFolder

Este comando comprimirá e adicionará myFolder (e seu conteúdo) ao existing.zip .

Uso avançado:

O sinalizador de atualização na verdade compara os arquivos recebidos com os existentes e adiciona novos arquivos ou atualiza os existentes.

Portanto, se você quiser adicionar / atualizar um subdiretório específico dentro do arquivo zip, basta atualizar a fonte conforme desejado e, em seguida, zipar novamente a fonte inteira com o sinalizador -u . Apenas os arquivos alterados serão zipados.

Se você não tiver acesso aos arquivos de origem, poderá descompactar o arquivo zip, atualizar os arquivos desejados e, em seguida, zerar novamente com o sinalizador -u . Novamente, somente os arquivos alterados serão zipados.

Exemplo:

Estrutura original de origem


ParentDir
├── file1.txt
├── file2.txt
├── ChildDir
│   ├── file3.txt
│   ├── Logs
│   │   ├── logs1.txt
│   │   ├── logs2.txt
│   │   ├── logs3.txt

Estrutura de origem atualizada


ParentDir
├── file1.txt
├── file2.txt
├── ChildDir
│   ├── file3.txt
│   ├── Logs
│   │   ├── logs1.txt
│   │   ├── logs2.txt
│   │   ├── logs3.txt 
│   │   ├── logs4.txt &lt-- NEW FILE 

Uso

$ zip -ur existing.zip ParentDir 
> updating: ParentDir/ChildDir/Logs (stored 0%)
>   adding: ParentDir/ChildDir/Logs/logs4.txt (stored 96%)
    
por 29.03.2016 / 17:30
0

Eu acredito que você pode adicionar arquivos usando este comando:

zip -r zipfile.zip newfile.txt newfile1.txt

A opção -r do comando zip permite adicionar arquivos.

    
por 13.10.2014 / 21:59

Tags