Comment créer et extraire des archives zip à partir de la ligne de commande?
command-line
zip
Joachim
la source
la source
Réponses:
Généralement , on utilise
tar
pour créer une archive non compressée et soitgzip
oubzip2
pour compresser cette archive. Les commandesgunzip
et correspondantesbunzip2
peuvent être utilisées pour décompresser ladite archive, ou vous pouvez simplement utiliser des indicateurs sur latar
commande pour effectuer la décompression.Si vous faites spécifiquement référence au format de fichier Zip , vous pouvez simplement utiliser les commandes
zip
etunzip
.Pour compresser:
ou compresser un répertoire
Pour décompresser:
cela le décompresse dans votre répertoire de travail actuel.
la source
zip -r9 archive.zip files...
syntaxe (-r = récursive -9 = compression maximale).zip
pouvez créer de nombreuses versions différentes d’archives .ZIP et utiliser de nombreux compresseurs. D'autre part, il existe un certain nombre d'autres outils de compression portant le même nom: 7-Zip, gzip, bzip2, rzip, etc. qui ne sont pas interchangeables.cd dir1; zip -r ../squash.zip *
unzip -d myfolder squash.zip
pour extraire dans un nouveau répertoire distinct (myfolder
) au lieu de placer tous les fichiers directement dans le répertoire en cours, ce qui peut être gênant si le fichier zip contient de nombreux fichiers et répertoires à son niveau supérieur. Cela imite le fonctionnement de la plupart des outils de décompression de l'interface utilisateur.Il existe un très grand nombre de façons différentes de compresser et de décompresser sous des dérivés UNIX, je suppose donc que vous vouliez dire «zip» au sens générique plutôt que sous un format de fichier spécifique .
Vous pouvez compresser des fichiers (au format compressé) avec le
tar
programme GNU :qui fera le répertoire courant. Remplacez-le
.
par d'autres noms de fichiers si vous voulez autre chose.Pour décompresser ce fichier, utilisez:
En supposant que vous disposiez d’une
tar
capacité suffisante pour la compression et la combinaison de fichiers.Sinon, vous pouvez simplement utiliser
tar cvf
suivi degzip
(encore une fois, si disponible) pour la compression etgunzip
suivi detar xvf
.Pour un traitement spécifique des fichiers au format ZIP, je vous recommande de télécharger
7zip
et d’utiliser ce dernier - il reconnaît une grande variété de formats de fichiers, y compris le fichier ZIP.la source
tar jcvf file.tar.bz2...
pour compresser au format bzip2 outar Jcvf file.tar.xz ...
pour la compression xz.Si les packages zip et unzip ne sont pas installés et que vous avez java, vous pouvez utiliser
jar
pour décompresser:la source
Eh bien, en ce qui concerne la distribution de fichiers pour divers systèmes d'exploitation, je recommanderais 7-zip .
En général , dans le paquet
p7zip
, vous aurez la7z
et7za
commande, avec laquelle vous pouvez créer vos propres archives 7z.7za
peut également décompresser des archives zip standard ( pkzip ) (et les créer également avec le-tzip
commutateur).Compression:
Décompressant:
Il peut également créer des archives auto-extractibles avec le
-sfx
commutateur:Je recommande cette méthode au cas où les utilisateurs de Windows ne pourraient pas ouvrir les archives 7z (au cas où vous voudriez conseiller un outil pour cela: PeaZip ).
Si vous souhaitez utiliser le même algorithme de compression avec vos archives, utilisez le
-J
commutateur avectar
:xz
est un outil UNIX, qui utilise LZMA2 pour la compression, mais fonctionne de la façongz
,bz2
, etc fonctionne. Cela fonctionne même comme un filtre.7z ne crée pas d'archives contenant des informations complètes sur le système de fichiers sous UNIX. Il est donc nécessaire de les utiliser
tar
avant d'utiliser 7z (mais puisque 7z stocke d'autres informations sur letar
fichier, je vous recommande de l'utiliserxz
, car il est conçu pour cela):la source
atool
: c’est un joli petit outil qui facilite l’utilisation de nombreux compresseurs. Lier cela àa
et créer une archive devienta arc.7z folder/
ou extraire un simplea arc.7z
et
Vous devrez vous assurer que ces commandes sont installées via votre gestionnaire de paquets. Ce n'est pas plus difficile que d'utiliser autre chose sur la ligne de commande. C'est certainement plus simple que de créer des archives avec tar.
la source
BSD Tar peut aussi le faire
Ou:
la source
tar
présente l’avantage de prendre en charge un certain nombre de formats de compression supplémentaires par rapport à GNUtar
et à d’autres formatstar
. Le plus grand avantage est peut-être qu'il le fait en utilisant unetar
syntaxe semblable à celle-ci . Vous pouvez certainement utiliser7z
,unrar
,unzip
, etc à partir de la ligne de commande, mais ils utilisent une autre syntaxe.La réponse la plus standard est
pax
, qui est recommandé surcpio
ettar
.Contrairement à
cpio
et POSIXtar
, mais comme GNUtar
,pax
est capable d’archiver des fichiers et de compresser l’archive. Ce comportement est différent de celuizip
qui compresse chaque fichier avant de le placer dans l'archive.la source
pax
les archives zip sont supportées?pax
archives non plus!Cela ne concerne que l'extraction.
Pour cela, j'ai commencé à utiliser
dtrx
.L'essentiel est d'éliminer la complexité. Donc, vous ne lui transmettez aucune archive et elle détermine ce qu’il faut en faire. Zip, tar, gz ... L'utilisation est toujours la même -
dtrx archive.zip
. Il pose quelques questions et vous avez terminé.dtrx
est disponible dans la plupart des référentiels, vous pouvez doncapt
|yum
Installez-le.la source
Je me trouve souvent en train d'essayer de compresser les fichiers modifiés dans mon répertoire de travail, que ce soit pour copier tous les fichiers modifiés dans un autre répertoire de travail sandbox ou pour les conserver pendant un court instant, car je souhaite annuler certaines des modifications.
Dans ce cas, je copie la liste des fichiers modifiés dans un fichier temporaire et l’utilise
zip
avec l’option-@
.Disons que j'ai modifié les fichiers Foo.h, Bar.cc et TestBar.cc.
Supposons que je crée un fichier appelé modified-files.txt dont le contenu est le suivant:
J'exécute la commande suivante pour compresser ces fichiers:
la source