Compression des dossiers et de leur contenu dans un fichier .zip sous Linux

80

Comment créer un fichier .zip contenant tous les fichiers ET tous les dossiers du répertoire?


la source
Doit-il s'agir d'un fichier .zip ou êtes-vous juste après un fichier compressé?
1
J'utilise 'tar': tar -zcvf archive.tar.gz répertoire / unix.stackexchange.com/questions/93139/…
njuhgn

Réponses:

124
zip -r foo.zip dir_path
Wesley Rice
la source
Le -r signifie récursif et lui dit de parcourir tous les sous-dossiers. Vous n'avez pas vraiment besoin du .zipnom de fichier ( foo.zip) car cela le créera quand même.
user2924019
Le commentaire de @ user2924019 selon lequel vous n'avez pas besoin de spécifier le nom zip n'est pas vrai dans CentOS7.
killjoy
CentOS7 est exactement où j'ai testé cela.
user2924019
1
Eh bien, nous sommes arrivés à ce qu'on appelle une impasse mexicaine, n'est-ce pas?
seizethecarp
16

Essayer:

zip -r filename.zip /path/to/folder

Remarque - cela ira de manière récursive, c’est-à-dire qu’il compressera tous les dossiers et tous les sous-dossiers du dossier donné.

icyrock.com
la source
5

Utilisez l' -roption. De zip (1) :

-r

Parcourez la structure de répertoires de manière récursive; par exemple:

zip -r foo foo

Le nom du fichier zip vient en premier. "Récursivement" signifie que le fichier zip inclura les sous-dossiers du dossier donné, les sous-dossiers de ces dossiers, etc.

Veuillez vous lever
la source
Où se trouve le fichier .zip après la compression?
Siraj Alam
3

Si vous êtes lié à un zip, j'utiliserais:

zip -r zipfilename directoryPath

La -rest la clé, mais vous pouvez trouver toutes les options ici .

Amal Murali
la source