Listar conteúdo de arquivos compactados

Pessoal, Teria algum comando que seja capaz de listar o conteúdo dentro de um arquivo compactado sem descompactá-lo?

Agradeço a ajuda.

Depende do arquivo

Arquivo zip

unzip -l arquivo.zip

Ou

less arquivo.zip

Tem que ver que compactação é do arquivo e abrir o manual do comando

1 curtida

Entendo. Quanto ao arquivo é só mudar o comando antes do “-ll” de acordo com a compactação do arquivo, não é isso?

Em outro tópico, eu já citei o zipinfo -1 arquivo.zip, que é um pouco mais amigável para “digestão” por outras ferramentas (já que lista apenas os nomes dos arquivos, sem precisar remover datas, tamanhos, por métodos às vezes falhos).

1 curtida

Mas e no caso de outros tipos de compactação? Tipo .tar.xz, .tar.bz, .tar.gz, etc.

Em ambos os casos, é preciso procurar outra biblioteca ou comando, que não necessariamente serão simplesmente um “troque uma palavra”.

Lista-se o conteúdo de um arquivo tar no terminal com tar tf arquivo.tar (bem diferente do comando para zip). E especificamente nos Linux mais comuns e atualizados, esse tar tf funciona igualmente para tar tf arquivo.tar.gz, .xz, .zst, etc. (mas não é garantido, especialmente em distribuições de nicho ou LTSes mais antigas).

No Python, tem a API tarfile, mas não sei dizer em mais detalhes como funciona ou como usar. Talvez valha a pena buscar uma API “universal” que uniformize essas APIs para formatos específicos.

2 curtidas

Entendi. Valeu a ajuda.

Este tópico foi fechado automaticamente 3 dias depois da última resposta. Novas respostas não são mais permitidas.