Wie konvertiere ich tar.bz2 in .bz2?

Wie konvertiere ich tar.bz2 in .bz2?

Ich habe eine Datei mit der Komprimierung tar.bz2 und möchte sie in das Format .bz2 konvertieren. Gibt es einen Befehl, der dies in einem Durchgang erledigt?

Ich habe Folgendes versucht, aber ohne Erfolg!

 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

Ich habe auch Folgendes versucht:

bunzip2 -c < US.tar.bz2 | gzip -c > us.bz2

was ergibt:

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.

Antwort1

tarist wie eine Zip-Datei, die eine Reihe anderer Dateien speichert, diese aber nicht komprimiert. bzip2komprimiert eine Datei, aber immer nur eine auf einmal. Eine .tar.bz2Datei zeigt wahrscheinlich an, dass eine Reihe von Dateien in eine gepackt tarund anschließend komprimiert wurden. Sie können sie nicht zusammen komprimieren, ohne sie vorher zu tarnen.

Ihr Fehler liegt daran, dass Ihre .tar.bz2Datei beschädigt ist. Unten sehen Sie ein Beispiel einer ordnungsgemäß funktionierenden Datei.

$ ls
test_file.tar.bz2
$ tar xvjf test_file.tar.bz2 
test_file
$ ls
test_file  test_file.tar.bz2

BEARBEITEN


Im obigen Beispiel gab es nur eine Datei im Tar. Wenn Sie nur diesen Ordner komprimieren möchten:

$ bzip2 test_file
$ ls
test_file.bz2

verwandte Informationen