Konvertieren Sie .tar.gz / .tar.bz2 in .7z im Stapel?

3013
Mehrdad

Wie konvertiere ich .tar.gz- und .tar.bz2-Dateien mithilfe der Befehlszeile in .7z-Dateien?

2
Möglicherweise können Sie [dieses Skript, das von zip konvertiert wird] (http://www.howtogeek.com/50893/easily-convert-all-your-zip-archives-to-7z-archives/) bearbeiten, um Ihre Anforderungen zu erfüllen? Es gibt auch einen Online-Konverter (http://www.zamzar.com/), der die genannten Formate unterstützt. N.N. vor 12 Jahren 3
@NN: Danke für den Link ... es scheint das zu sein, was ich will, abgesehen davon, dass ein temporäres Verzeichnis erforderlich ist (was nicht trivial ist, da meine Dateien groß sind). Ich werde es trotzdem versuchen; Vielen Dank. Mehrdad vor 12 Jahren 0
Ich bin mir ziemlich sicher, dass Sie es nicht vermeiden können, die Dateien in unkomprimierter Form auf die Festplatte zu schreiben. Ich denke nicht, dass irgendein nützlicher Kompressionsalgorithmus seine Arbeit erledigen kann, ohne dass die ganze Datei betrachtet werden muss. Lukasa vor 12 Jahren 1
Passt die größte Ihrer Dateien unkomprimiert in den Speicher? Wenn ja, könnte es sich lohnen, eine Ramdisk für die temporären Dateien zu verwenden? therefromhere vor 11 Jahren 0

2 Antworten auf die Frage

0
nik

Update : Ich habe das " windows" -Tag Ihrer Frage komplett verpasst .
Wenn Sie also keine Unix-Tools (Cygwin?) Verwenden, kann diese Antwort dort nicht verwendet werden.
Ich erwarte, dass cygwindieses Rohr korrekt zu implementieren - Sie brauchen bash, tar, bzip2und 7zaus der Umwelt.


Sie können die Teerausgabe wie folgt in eine 7z-Pipeline leiten.

tar xfj dateiname.tar.bz2 | 7z a -si Dateiname.7z 

und ähnlich

tar xfz dateiname.tar.gz | 7z a -si Dateiname.7z 

Dadurch sparen Sie den Speicherplatz für extrahierte Daten, konvertieren jedoch nicht inline.
Sie benötigen immer noch genügend Speicherplatz, um das 7zaus dem Tarball erstellte ' ' zu speichern .
Sie können das Archiv erst löschen, wenn die Pipe endet.

`tar xf file.tar` extrahiert Dateien auf die Festplatte. Vielleicht wollten Sie` tar -xf file.tar -O` sagen, die die extrahierten Dateien an StdOut sendet Bor691 vor 9 Jahren 0
0
Bor691

Versuchen Sie es mit ArcConvert .

Ich habe dieses Programm nicht persönlich getestet, aber es besagt, dass es das tut, was Sie von seiner Website wollen:

------------------------------------------------------------------------------ This convertor can convert the following archives: ------------------------------------------------------------------------------ 7-ZIP/ LZH / CAB / ZIP / ARJ / ACE / RAR / TAR / TGZ / GZ / Z / BZ2 / YZ1 / YZ2 / GCA / BEL / RPM / DEB/ BH / Noa32 / HKI / PAQAR / SQX /HA /ZOO / UHARC /LFB / ZLIB / UCL / IMP / RS / SPL / APK / Arc / DZ / MSI / ALZ / PMA / PAQ7 / CHM / UDA / PAQ8 / Cryptonite / ISO / LZOP / BMA / ZIP AES (128/192/256) / Nanozip Alpha/ XZ/ FreeArc/Zpaq/GZA ------------------------------------------------------------------------------ to the following ones: ------------------------------------------------------------------------------ ZIP, 7-ZIP, CAB, LHA, TAR, TGZ, BZ2, YZ1, BGA, RAR, ACE, NOA32, PAQAR, UHARC, YZ2, DZ, HA, XZ, FreeArc, ARJ/PAQ9/GZA 

Bildschirmfoto:

ArcConvert

Das OP bat um eine Befehlszeilenlösung. ArcConvert ist auch nur eine grafische Benutzeroberfläche für verschiedene Werkzeuge. Intern verwendet es beispielsweise "7z.exe", ein Befehlszeilentool. nixda vor 9 Jahren 0