Afficher la liste des fichiers de l’archive ZIP sous Linux


407

Comment visualiser la liste des fichiers d'une archive ZIP sans la décompresser?


Est-il possible de faire la même chose pour une archive Unix normale? (tar / gzip / bz2 / etc)
ThorSummoner

tar tvf. si .gz, ajoutez un z. Pour bz2, ajoutez j. Beaucoup plus, consultez la page de manuel.
UtahJarhead

Réponses:


470

L' lessutilitaire est capable de jeter un coup d'oeil dans une ziparchive. En fait, si vous regardez les résultats de unzip -l zipfileet less zipfile, vous constaterez qu’ils sont identiques.


98
Notez que less zipfilesur MacOS-X, le contenu du fichier binaire est affiché, de sorte que vous voyez beaucoup de déchets au lieu du contenu du fichier zip. Alors vous devriez opter pour le `` ùnzip -l zipfile```
heiglandreas

10
@ayaz Dans quel système moins les fichiers zip sont-ils listés? Je vois des commentaires indiquant que cela ne fonctionne pas sur MAC, Ubuntu et ici j'utilise Debian. Debian affiche également des déchets binaires.
Dr Beco

12
Dans Ubuntu, essayez view [zipfile].
Samuel Lampa

4
FAUX. unzip -l fonctionne bien pour afficher les fichiers dans une archive zip, mais moins de contenus binaires sont souvent générés, ce qui est bien sûr désastreux.
Arturas M

17
Vous devez lesspipeinstaller l' assistant pour activer la prise en charge des fichiers zip à moindre coût. Il est standard sur de nombreux systèmes Linux mais pas sur OSX, mais vous pouvez l'installer avec Brew.
Pimlottc

112

Essayer unzip -l files.zip | less

Voir aussi man unzippour plus d'options


6
Vous pouvez ignorer le tuyau à lesscommander. C'est une excellente idée dans une grande collection de fichiers, cependant.
Omar

65

Pour lister le contenu du zip:

zipinfo -1 myzipfile.zip

Pour une sortie détaillée:

zipinfo myzipfile.zip

7
Bonne réponse, vous n'avez pas à analyser la sortie uniquement pour obtenir les noms de fichiers.
Antoine Pelisse

34

Veuillez utiliser

vim ZIP_FILE_NAME

pour le même. C’est un moyen simple et facile à retenir.


5
Nice, cela permet également d'ouvrir des fichiers individuels dans les archives sans le décompresser.
user3885927

Assez inattendu et extrêmement pratique! Merci!
Pierre

En fait: cela ne fonctionnera pas si unzipn’est pas installé sur le système. En plus de ça, génial!
Sjas

13

Vous pouvez faire le zip apparaître comme un répertoire (dans lequel vous utilisez cd, lsetc.) par le montage avec le fusible zip système de fichiers virtuel.

mkdir foo.d
fuse-zip foo.zip foo.d
ls foo.d
cat foo.d/README
...
fusermount -u foo.d
rmdir foo.d

AVFS est un autre système de fichiers FUSE pertinent . Il crée une vue de la totalité de la hiérarchie de vos répertoires, où toutes les archives ont un répertoire associé (le même nom est ajouté à la fin) qui semble contenir le contenu de l'archive.#

mountavfs
ls ~/.avfs/$PWD/foo.zip\#
cat ~/.avfs/$PWD/foo.zip\#/README
...
umountavfs

De nombreux gestionnaires de fichiers modernes (par exemple, Nautilus, Dolphin) affichent le contenu des archives de manière transparente.

AVFS est en lecture seule. Fuse-zip est en lecture-écriture, mais sachez que les modifications ne sont écrites dans le fichier zip qu'au moment du démontage. Ne commencez donc pas à lire l'archive car elle ne sera pas modifiée avant son fusermount -uretour.


Nice, Giles. Merci. Juste un rapide: peut-on ajouter des fichiers en tapant "cp" dans le répertoire?
Dr Beco

@DrBeco Avec fuse-zip, oui. Avec avfs, non.
Gilles

9

Au moins dans Ubuntu, la commande la plus simple est probablement la suivante:

view [zipfile]

Cela ouvrira la liste des fichiers dans votre éditeur de texte standard (nano, vim, etc.).


2

C'est en fait unzip -l file.zip | grep "search"ou si vous avez beaucoup de fichiers

for i in `ls *zip`; do 
  unzip -l $i | grep "search"; 
done

Mise à jour: changé de '-p' en '-l' afin de rechercher des fichiers.


2

Si vous êtes plus orienté graphiquement, Midnight Commander peut également parcourir les fichiers zip comme s'il s'agissait de répertoires classiques.


1

Une solution plus complète: vim || Emacs

La réponse précédente de @kinORnirvana est ma préférée pour produire un fichier avec le contenu d’une archive zip.

zipinfo [-1] archive.zip > archive_content.txt

Cependant, je recommande vim ou emacs (pas nano) si vous avez besoin de naviguer dans un fichier d’archive ou même d’afficher le contenu d’un fichier qu’il contient.

vim archive.zip

Cette approche fonctionne également avec d'autres formats d'archives:

vim file.tar
vim file.tar.gz
vim file.tar.bz2

Avec vim ou emacs, vous pouvez:

  • parcourir la structure de répertoire du fichier archive.
  • voir le contenu de n'importe quel fichier à l'intérieur du fichier archive.

entrez la description de l'image ici


0

(yaa) Encore une autre réponse:

Alias ​​cette commande:

alias vless='/usr/share/vim/vim73/macros/less.sh'

et vous pouvez utiliser vless file.zippour tirer parti de vi(ou vim) moins de script.

(bon aussi pour substituer moins, afin que vous puissiez avoir des couleurs)


1
less -R ne soutenir couleurs ANSI.
Sylvain Leroux
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.