.7zArchive sind Archive, die häufig mit einem Algorithmus komprimiert werden, während .tarArchive nur Archive sind.
Sie unterscheiden sich in ihrem Umfang, und in den meisten Fällen würde eine Konvertierung eine optionale Dekomprimierung erfordern, gefolgt von einer Extraktion des Quellarchivs. Selbst wenn ein .7zArchiv keine Komprimierung verwenden würde, wäre dennoch eine Extraktion erforderlich.
Davon abgesehen: Wenn Sie das Quellarchiv auf einmal [dekomprimieren] / extrahieren / durchsuchen wollten, ist die Antwort, dass Sie es nicht können, zumindest nicht die Standardtools von Ubuntu, weil Sie tarnicht lesen könnenstdin , also können Sie nicht 7zund weiterleiten tar. Auf jeden Fall ist es sehr einfach, alles in einem einzigen Befehl zu automatisieren:
mkdir tmp && 7z x <path_to_source_archive> -otmp && tar cf archive.tar tmp && rm -rf tmp
* <Path_to_archive> = Pfad zum .7zQuellarchiv
Auch die Zeit, die erforderlich ist, um die Dateien des Quellarchivs auf die Festplatte zu schreiben und die extrahierten Dateien zu lesen, um das Quellarchiv in zwei Schritten [zu dekomprimieren] / zu extrahieren / zu durchsuchen, ist meistens ein Engpass für die gesamte Aufgabe (obwohl dies nicht der Fall ist) Nur) Aufgrund der geringen E / A-Geschwindigkeit einer potenziellen Festplatte besteht eine Teillösung darin, die temporären Dateien auf einer Ramdisk zu speichern, um den gesamten Engpass fast zu beseitigen:
- Erstellen Sie den Einhängepunkt für das Dateisystem der Ramdisk:
sudo mkdir /mnt/tmpfs
- Hängen Sie das Dateisystem der Ramdisk ein:
sudo mount -t tmpfs -o size=<tmpfs_size> tmpfs /mnt/ramdisk* <tmpfs_size> = Größe des Dateisystems in Bytes * 10 3 (1, 1K, 1M, 1G, ...)
- Führen Sie
mkdir /mnt/tmpfs/tmp && 7z x <path_to_source_archive> -o/mnt/tmpfs/tmp && tar cf archive.tar /mnt/tmpfs/tmp && rm -rf /mnt/tmpfs/tmp* <path_to_archive> = Pfad zum .7zQuellarchiv
- Hängen Sie das Dateisystem der Ramdisk aus:
sudo umount
- Entfernen Sie den Einhängepunkt für das Dateisystem der Ramdisk:
sudo rmdir /mnt/tmpfs
.7zDatei auf einem anderen Computer zu öffnen ?