
Ich weiß, dass ich beim Komprimieren eines Archivs mit dem 7za
Dienstprogramm Statistiken wie die Anzahl der verarbeiteten Dateien und die Menge der verarbeiteten Bytes (die ursprüngliche Größe der Daten) erhalte.
Ist es möglich, mithilfe der Befehlszeile (unter Linux) oder einer Programmiersprache Folgendes zu bestimmen:
- die ursprüngliche Größe eines Archivs, bevor es komprimiert wurde?
- die Anzahl der in einem Archiv enthaltenen Dateien/Verzeichnisse?
Die Antwort könnte lauten: „Nein, dekomprimieren Sie einfach das gesamte Archiv und führen Sie dann die Zählung/Größenbestimmung durch“, aber es wäre nützlich zu wissen, ob es einen schnelleren/weniger speicherintensiven Weg gibt.
Antwort1
Sie können die Ausgabe 7za l <path to archive>
in eine Textdatei oder direkt in ein Programm weiterleiten, das in der Programmiersprache Ihrer Wahl geschrieben ist.
Antwort2
Nun, ich weiß nicht, ob es mit 7za funktioniert. Aber Sie können die Tar-Größe schätzen, bevor Sie die Tar-Datei mit diesem Befehl erstellen.
$ tar -cf - /Verzeichnis/zum/Archiv/ | wc -c
Quelle:http://www.thegeekstuff.com/2010/04/unix-tar-command-examples/