Como pesquiso o conteúdo dos arquivos 7-Zip (.7z)?


10

Estou procurando uma maneira de pesquisar o conteúdo de arquivos dentro de um arquivo 7-Zip (.7z) sem precisar descompactar o arquivo. Eu tenho muitos arquivos 7-Zip com código dentro deles e gostaria de pesquisá-los.

Existe uma maneira de fazer isso?


Qual sistema operacional?
— Darth Android

idem. Embora, pelo que posso dizer, não haja maneira de montar um arquivo 7z no sistema de arquivos no linux, o que permitiria que ele usasse as ferramentas de arquivo * nix usuais para pesquisar.
— Journeyman Geek

@ Martin: procure por quais critérios? nome? bytes dentro dos arquivos armazenados no .7z?
— Akira

SO: Windows; Exemplo de critério: "my string"
— Martin

Existem alguns utilitários que fazem isso muito bem. Veja as respostas mais recentes.
— gravidThoughts

Respostas:


10

No Windows, use um prompt de comando:

cd C:\Program Files\7-Zip
7z

Para procurar um arquivo específico, por exemplo namefile:

7z l compressed.tar namefile -r

Tutorial em vídeo: Pesquisar arquivos com o 7-Zip


9
Sim, isso funciona e é bastante rápido, especialmente se não houver muitas correspondências. Mas a pasta onde o 7z.exe mora deve estar no PATH, por exemplo C:\Program Files\7-Zip. No entanto, ele não pesquisa o conteúdo dos arquivos, apenas os nomes dos arquivos e, portanto, não responde à pergunta.
— Peter Mortensen

4

O WinRAR pode fazer isso. No entanto, vamos encarar o fato de que isso envolve descompactá-lo, mesmo que o WinRAR o faça perfeitamente.

WinRAR, pesquisando um arquivo


2

Como outros já disseram, não há como. Para examinar o conteúdo de um arquivo, ele precisa ser descompactado (independentemente de os arquivos serem compactados ou não, ou de criptografados ou não). A única maneira de evitar a descompactação dos arquivos é se eles forem adicionados com o método de armazenamento (ou seja, não compactados, apenas reunidos).



2

O dnGrep é uma excelente implementação de grep do Windows que possui um plug-in de arquivo que funciona com todos os formatos de arquivo. Você pode usar Regex, Xpath, Texto ou fonético para sua pesquisa.


Apenas instalei isso. Quando tento executá-lo, vejo o dnGREP.exe na lista de processos, mas nenhuma GUI aparece. Tentou matá-lo e relançá-lo sem efeito. Terá que tentar outra coisa.
— Pacoverflow

1

Se você estiver no Linux com o 7-Zip instalado:

find . -iname *7z -exec 7zr -l \{\} \; | grep "filename.cpp"

1
Isso ainda está descompactando-os. Embora não seja possível fazer o que o OP quer sem desembalar-los, então ...
— EBGreen

Estou de acordo com a EBGreen. Você precisa descompactá-los, a menos que esteja de acordo com resultados incompletos.
— Surfasb

1
Esse comando não procura apenas nomes de arquivos ? Martin quer pesquisar dentro dos próprios arquivos , não apenas em seus nomes.
— Synetech
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.