Comprimere le cartelle e i loro contenuti in un file .zip in Linux


80

Come faccio a creare un file .zip che contenga tutti i file E tutte le cartelle nella directory?

linux  zip 

Deve essere un .zip o stai cercando un file compresso?

1
Uso 'tar': tar -zcvf archive.tar.gz directory / unix.stackexchange.com/questions/93139/…
njuhgn,

Risposte:


124
zip -r foo.zip dir_path

-R significa ricorsivo e gli dice di passare attraverso tutte le sottocartelle. Non hai davvero bisogno del .zipnome file ( foo.zip) in quanto lo creerà comunque.
user2924019

Il commento di @utente2924019 secondo cui non è necessario specificare il nome zip non è vero in CentOS7.
killjoy,

CentOS7 è esattamente dove l'ho provato.
user2924019

1
Bene, siamo arrivati ​​a ciò che è noto come un punto di stallo messicano, ora no?
seizethecarp,

16

Provare:

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

Nota: questo andrà in modo ricorsivo, ovvero comprimerà tutte le cartelle e tutte le sottocartelle della cartella specificata.


5

Usa l' -ropzione Da zip (1) :

-r

Viaggia ricorsivamente nella struttura delle directory; per esempio:

zip -r foo foo

Il nome del file zip viene prima di tutto. "Ricorsivamente" significa che il file zip includerà le sottocartelle della cartella specificata, le sottocartelle di tali cartelle e così via.


Dove si trova il file .zip dopo la compressione?
Siraj Alam,

3

Se sei legato a una zip, userei:

zip -r zipfilename directoryPath

La -rchiave è, ma puoi trovare tutte le opzioni qui .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.