2012-02-26 10 views

Respuesta

49

utilice la opción -j de tar.

tar -xjf /path/to/archive.tar.bz 
+3

Creo que se prefiere dejar el '-' apagado. Solo 'tar xjf/path/to/archive.tar.bz' es suficiente. –

3

Si es realmente un viejo bzip 1 archivo, intente:

bunzip archive.tar.bz 

y tendrás un archivo tar estándar. De lo contrario, es lo mismo que con los archivos .tar.bz2.

7

De acuerdo con las páginas del manual para bzip2

If the file does not end in one of the recognised endings, .bz2, .bz, .tbz2 or .tbz, bzip2 complains that it cannot guess the 
    name of the original file, and uses the original name with .out appended. 

Basado en esto, yo supongo que '.bz' se considera un sufijo válido para los archivos bzip2 comprimido. Además, tenga en cuenta que el nombre del archivo original fue probablemente generada por la mano, algo como esto:

tar jcf archive.tar.bz /path/to/files 

En lugar de hacer esto:

tar cf archive.tar /path/to/files && bzip2 archive.tar 

lo que forzaría el nombre del archivo para ser archivo.tar. bz2.

A menos que el archivo que está desempaquetando sea anterior a, digamos 1998 (bzip2 fue lanzado en 1996), supongo que en realidad está mirando un archivo bz2.

Si está interesado en la historia de bzip vs bzip2 y las diferencias técnicas entre los dos, hay una buena discusión en el Wikipedia Bzip2 page, así como en el archivo del bzip2 home page. Este último incluye un enlace a la fuente original de bzip, que es no compatible con bzip2 porque requeriría código cubierto de patente para descomprimir archivos comprimidos con el bzip original.

Los tipos de archivos difieren según el número mágico, bzip2 usa BZh, el bzip original usa BZ0.

Cuestiones relacionadas