Utilisez l'indicateur de mise à jour: -u
Exemple:
  zip -ur existing.zip myFolder
Cette commande va compresser et ajouter myFolder(et son contenu) au fichier existing.zip.
Utilisation avancée:
L'indicateur de mise à jour compare en fait les fichiers entrants à ceux existants et ajoutera de nouveaux fichiers ou mettra à jour les fichiers existants.
Par conséquent, si vous souhaitez ajouter / mettre à jour un sous-répertoire spécifique dans le fichier zip, mettez simplement à jour la source comme vous le souhaitez, puis recompressez la source entière avec l' -uindicateur. Seuls les fichiers modifiés seront compressés.
Si vous n'avez pas accès aux fichiers source, vous pouvez décompresser le fichier zip, puis mettre à jour les fichiers souhaités, puis recompresser avec l' -uindicateur. Encore une fois, seuls les fichiers modifiés seront compressés.
Exemple:
Structure source d'origine
ParentDir
├── file1.txt
├── file2.txt
├── ChildDir
│   ├── file3.txt
│   ├── Logs
│   │   ├── logs1.txt
│   │   ├── logs2.txt
│   │   ├── logs3.txt
Structure source mise à jour
ParentDir
├── file1.txt
├── file2.txt
├── ChildDir
│   ├── file3.txt
│   ├── Logs
│   │   ├── logs1.txt
│   │   ├── logs2.txt
│   │   ├── logs3.txt 
│   │   ├── logs4.txt <-- NEW FILE 
Usage
$ zip -ur existing.zip ParentDir 
> updating: ParentDir/ChildDir/Logs (stored 0%)
>   adding: ParentDir/ChildDir/Logs/logs4.txt (stored 96%)