Extrair arquivos 7z com ferramentas padrão do linux?


29

Eu sei que você pode extrair .7zarquivos com 7-zip.

Existe outro programa linux padrão que possa fazer isso? Talvez um desses

tar
bzip2
xz
gzip

Acrescentarei que bsdtarpode fazer isso, mas não está disponível em todos os sistemas.


pergunta semelhante: 7zip para linux
Santosh Kumar 31/03

Respostas:


10

Os arquivos nº 7-Zip usam LZMA e LZMA2, que não são suportados por ferramentas padrão (eles também usam bzip2, mas você ainda precisa decodificar o cabeçalho).


1
Na verdade, xzusa o LZMA também. Mas sim, ele ainda não entenderá o restante do formato 7z.
jjlin

31

Os arquivos 7-zip podem ser extraídos com o p7zip ( http://p7zip.sourceforge.net/ ) no Linux. Ele está incluído nos repositórios do: Debian, Fedora, Ubuntu e possivelmente em outras distribuições também.

Listar o conteúdo com (L minúsculo, para lista):

7za l myarchive.7z

Extrair conteúdo:

7za x myarchive.7z

1
O p7zip está disponível nos macports, como um binário. Apenas:sudo port install p7zip
smci

2
no RHEL 6 de 64 bits, yum instala p7zip.x86_64 e, se necessário, yum instala p7zip-plugins.x86_64
rivu

2

A maneira "padrão" de trabalhar com arquivos 7-Zip no Unix é usar o P7ZIP . Mas como o formato 7-Zip foi projetado principalmente para Windows, você não deve esperar P7ZIPinstalar nas distribuições Linux por padrão.

Se você deseja o benefício da compactação LZMA no Unix, prefira o XZ Utils .


1

Eu não consegui encontrar o 7za em nenhum repositório yum no RHEL / CentOS, então acabei de baixar a versão mais recente do source do sourceforge.net:

$ wget https://sourceforge.net/projects/p7zip/files/p7zip/16.02/p7zip_16.02_src_all.tar.bz2

(altere "16.02" acima para a versão mais recente no momento em que você tentar fazer o download, você pode descobrir em https://sourceforge.net/projects/p7zip/files/p7zip/ .

Estando no diretório em que você baixou o arquivo p7zip, descompacte-o:

$ tar -xvjf p7zip_16.02_src_all.tar.bz2

Em seguida, execute o comando make como usuário root dentro da pasta extraída:

# make
# make install

Ele produzirá 7zabinário no /usr/local/bindiretório (se você usar o RHEL7 pelo menos):

$ whereis 7za
7za: /usr/local/bin/7za

0

Eu tentei o 7za no início, mas não funcionou, então tentei usar o 7z com as mesmas opções e funciona. Aqui está o exemplo: Para extrair: 7z e xy213file.7z


0

O 7za binary faz parte do pacote p7zip que pode ser usado para isso. Pode ser instalado a partir do epelrepositório se você usar RHEL / OL / CentOS (testado em RHEL6 / RHEL7):

RHEL6, 7:

# rpm -Uvh http://mirrors.kernel.org/fedora-epel/6/i386/epel-release-6-8.noarch.rpm
# yum install p7zip

Este pacote não foi atualizado por um longo tempo, mas ainda pode ser usado para extrair arquivos:

$ 7za x xyz_7zfile.7z

-1

O pacote p7zip está disponível no macports, como um binário.

Somente: sudo port install p7zip

E você está fora! 7z x downloads/myfile.7z

O mesmo vale para o CentOS, mas usando o yum:

sudo yum install p7zip

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.