217 votes

Lire le contenu d'un fichier zippé sans extraction ?

Comment puis-je lire le contenu d'un fichier particulier dans une archive sans extraire le fichier .zip qu'il contient ? J'utilise la ligne de commande Linux.

Un précédent question demande à voir le répertoire de l'archive. Mais pour moi, il ne suffit pas de voir la liste des fichiers de l'archive, j'ai besoin de voir le contenu d'un fichier de l'archive.

2 votes

0 votes

@fixer1234 (et d'autres) : La question liée demande "Comment puis-je voir les fichiers d'une archive ZIP ? "AFAIC, c'est la même question que "Comment puis-je voir le contenu d'un fichier ? "Il est malheureux que beaucoup de personnes qui ont répondu à cette question l'a interprété comme "Comment puis-je voir le répertoire de l'archive ?" Cependant, La réponse de Gilles (naturellement) et La réponse de Rajasekhar Tolety (apparemment) à cette question fournissent des réponses à cette question.

1 votes

@Scott, nous devrions peut-être trouver un moyen de fusionner les deux questions afin que les deux sujets soient couverts par l'une d'entre elles, ou recentrer l'autre pour qu'elle concerne clairement le répertoire, puis déplacer les réponses entre les deux endroits pour qu'elles correspondent aux questions. Pour l'instant, les deux sont un méli-mélo.

278voto

danielcraigie Points 3101

unzip -l archive.zip énumère le contenu d'une archive ZIP pour s'assurer que votre fichier s'y trouve.

Utilisez le -p pour écrire le contenu des fichiers nommés sur stdout (écran) sans avoir à décompresser l'archive entière.

unzip -p archive.zip file1.txt | less

Pour ce genre d'opération, j'envoie toujours la sortie à less sinon le fichier entier s'envole à l'écran avant que vous ne puissiez le lire.

En outre, zcat est idéal pour afficher le contenu des fichiers .gz sans avoir à les décompresser au préalable.

Edit : J'ai modifié cette réponse pour utiliser -p au lieu de -c . -p extrait le fichier octet par octet, tandis que -c imprime le nom du fichier et peut effectuer une conversion EOL. Aussi, unzip -p vous permet d'extraire des fichiers multiples, mais il ne sort pas dans l'ordre donné comme cat fait.

10 votes

Au moins dans Ubuntu, less est en quelque sorte configuré pour faire cela par défaut - donc less archive.zip affiche en fait la liste des fichiers.

1 votes

Bzcat pour visualiser le contenu des fichiers bz2 sans avoir à les décompresser au préalable...

5 votes

Unzip -c affiche également le nom du fichier et quelques messages supplémentaires (en les envoyant à stdout). L'utilisation de -p à la place envoie seulement le fichier au format binaire. C'est plus utile pour le piping

8voto

jwir3 Points 1384

zipinfo est un autre outil que vous pouvez utiliser, c'est utile si vous êtes sur un système verrouillé où unzip n'est pas autorisé.

4voto

Kokizzu Points 1525

Si vous cherchez simplement à voir images dans les archives, vous pouvez utiliser Comix ou plus récent MComix pour voir les images à l'intérieur .zip , .rar , .cbr y .cbz les fichiers sans les extraire.

4voto

patryk.beza Points 1361

Vous pouvez utiliser vim pour lister le contenu de la zip / rar / tar archives :

vim archive.zip

BTW : aquí c'est la même question.

2voto

Yves Martin Points 522

Début Emacs en ligne de commande et ouvrez vos fichiers zip avec Zip-Archive mode. Sans aucun réglage d'Emacs/elisp (dont les nouveaux utilisateurs ont généralement peur), vous verrez les détails du fichier comme dans le cas suivant zipinfo : modes, longueur, date, heure

Ensuite, vous pourrez ouvrir des fichiers dans des tampons et même sauvegarder vos modifications dans l'archive, avec des raccourcis standard :

  • Entrez sur un nom de fichier dans la liste pour l'ouvrir.
  • Modifier et sauvegarder avec Ctrl-x Ctrl-s
  • Tampon d'extinction Ctrl-k pour retourner à l'archive buffer et aller sur

Lorsque dans Zip-Archive Tampon, utiliser Ctrl-h m pour obtenir tous les raccourcis disponibles dans la vue Aide.

J'espère que cela vous permettra de découvrir les superbes fonctionnalités d'Emacs.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X