O utilitário less
é capaz de espiar em um arquivo zip
. De fato, se você observar as saídas de unzip -l zipfile
e less zipfile
, verá que elas são idênticas.
Como posso visualizar a lista de arquivos em um arquivo ZIP sem descompactá-lo?
Experimente unzip -l files.zip | less
Além disso, veja man unzip
para mais opções
Para listar o conteúdo do zip:
zipinfo -1 myzipfile.zip
Para uma saída detalhada:
zipinfo myzipfile.zip
Por favor use
vim ZIP_FILE_NAME
para o mesmo. Isto é simples e fácil de lembrar.
Você pode fazer com que o zip apareça como um diretório (no qual você usa cd
, ls
, etc.) montando-o com o fuse-zip sistema de arquivos virtual.
mkdir foo.d
fuse-zip foo.zip foo.d
ls foo.d
cat foo.d/README
...
fusermount -u foo.d
rmdir foo.d
Outro sistema de arquivos FUSE relevante é o AVFS . Ele cria uma visão de toda a sua hierarquia de diretórios onde todos os arquivos possuem um diretório associado (mesmo nome com #
colado no final) que parece conter o conteúdo do arquivo.
mountavfs
ls ~/.avfs/$PWD/foo.zip\#
cat ~/.avfs/$PWD/foo.zip\#/README
...
umountavfs
Muitos gerenciadores de arquivos modernos (por exemplo, Nautilus, Dolphin) mostram o conteúdo do arquivo de forma transparente.
O AVFS é somente leitura. Fuse-zip é leitura-gravação, mas tenha cuidado que as alterações são gravadas apenas no arquivo zip no momento da desmontagem, portanto, não comece a ler o arquivo esperando que ele seja modificado até que fusermount -u
retorne.
Pelo menos no Ubuntu, o comando possivelmente mais fácil é:
view [zipfile]
Isso abrirá a listagem de arquivos em seu editor de texto padrão (nano, vim etc).
Na verdade, é unzip -l file.zip | grep "search"
ou se você tem muitos arquivos
for i in 'ls *zip'; do
unzip -l $i | grep "search";
done
Atualização: alterada de '-p' para '-l' para pesquisar arquivos.
Se você é mais orientado graficamente, o Midnight Commander também pode navegar por arquivos zip como se fossem diretórios comuns.
(yaa) Mais outra resposta:
Alias este comando:
alias vless='/usr/share/vim/vim73/macros/less.sh'
e você pode usar vless file.zip
para aproveitar o vi
(ou vim
) menos script.
(também é bom substituir menos, então você pode ter cores)
A resposta anterior de @kinORnirvana é a minha favorita para produzir um arquivo com o conteúdo de um arquivo zip.
zipinfo [-1] archive.zip > archive_content.txt
No entanto, eu recomendo vim ou emacs (não nano) se você precisar navegar em um arquivo ou mesmo visualizar o conteúdo de um arquivo contido nele.
vim archive.zip
Esta abordagem também funciona com outros formatos de arquivo:
vim file.tar
vim file.tar.gz
vim file.tar.bz2
Com vim ou emacs você pode: