Tenho um arquivo com compactação tar.bz2 , gostaria de convertê-lo para .bz2 . Existe um comando que faz isso de uma só vez?
Eu tentei o abaixo, mas sem alegria!
tar -xvjf US.tar.bz2
US
bzip2: Compressed file ends unexpectedly;
perhaps it is corrupted? *Possible* reason follows.
bzip2: Inappropriate ioctl for device
Input file = (stdin), output file = (stdout)
It is possible that the compressed file(s) have become corrupted.
You can use the -tvv option to test integrity of such files.
You can use the `bzip2recover' program to attempt to recover
data from undamaged sections of corrupted files.
tar: Unexpected EOF in archive
tar: Unexpected EOF in archive
PS
Eu tentei o abaixo também:
bunzip2 -c <US.tar.bz2 | gzip -c > us.bz2
que produz:
bunzip2: Compressed file ends unexpectedly;
perhaps it is corrupted? *Possible* reason follows.
bunzip2: Inappropriate ioctl for device
Input file = (stdin), output file = (stdout)
It is possible that the compressed file(s) have become corrupted.
You can use the -tvv option to test integrity of such files.
You can use the `bzip2recover' program to attempt to recover
data from undamaged sections of corrupted files.
Responder1
tar
é como um arquivo zip que armazena vários outros arquivos, mas não os compacta. bzip2
compacta um arquivo, mas apenas um de cada vez. Um .tar.bz2
arquivo provavelmente indica que vários arquivos foram colocados em um arquivo tar
e posteriormente compactados. Você não pode juntá-los sem alcatroá-los primeiro.
Seu erro é porque seu .tar.bz2
arquivo está corrompido. Veja um exemplo de um arquivo funcionando corretamente abaixo.
$ ls
test_file.tar.bz2
$ tar xvjf test_file.tar.bz2
test_file
$ ls
test_file test_file.tar.bz2
EDITAR
No exemplo acima, havia apenas um arquivo no tar. Se você quiser compactar apenas essa pasta:
$ bzip2 test_file
$ ls
test_file.bz2