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
tar
ist wie eine Zip-Datei, die eine Reihe anderer Dateien speichert, diese aber nicht komprimiert. bzip2
komprimiert eine Datei, aber immer nur eine auf einmal. Eine .tar.bz2
Datei zeigt wahrscheinlich an, dass eine Reihe von Dateien in eine gepackt tar
und anschließend komprimiert wurden. Sie können sie nicht zusammen komprimieren, ohne sie vorher zu tarnen.
Ihr Fehler liegt daran, dass Ihre .tar.bz2
Datei 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