Mögliches Duplizieren:
Eine Reihe von Verzeichnissen komprimieren und eine tar-komprimierte Datei erstellen
In diesem Beitrag wird beschrieben, wie Sie jede Datei einzeln innerhalb einer Verzeichnisstruktur gzipen. Ich muss jedoch etwas anderes machen. Ich muss eine große gzip-Datei für alle Dateien in einem bestimmten Verzeichnis erstellen. Ich muss auch in der Lage sein, den Ausgabedateinamen für die komprimierte Datei (z. B. files.gz) anzugeben und die alte komprimierte Dateidatei zu überschreiben, falls bereits eine vorhanden ist.
gzip
komprimiert von Natur aus nur eine einzige Datei. Verwenden Sie, um mehrere Dateien für das anschließende Zippen in eine Datei zu legentar
.Antworten:
Alles in folderToCompress wird in compressFileName gespeichert
Bearbeiten: Nach Überprüfung und Kommentaren wurde mir klar, dass Leute ohne eine Erweiterung mit compressFileName verwechselt werden können. Wenn Sie möchten, können Sie die Erweiterung .tar.gz (wie vorgeschlagen) mit dem komprimierten Dateinamen verwenden
quelle
compressFileName
damit es die.tar.gz
Erweiterung enthält, oder Sie werden alle anderen verrückt machen.tar -zcvf two-dirs.tar.gz dir-one dir-two
wird ein Archiv mit zwei Verzeichnissen erstellt.*
, um alles im aktuellentar -zcvf all.tar.gz *
Es gibt viele Komprimierungsmethoden, die rekursiv über die Befehlszeile funktionieren, und es ist gut zu wissen, wer das Endpublikum ist.
dh wenn es an jemanden gesendet werden soll, der Windows ausführt, ist zip wahrscheinlich am besten:
Für andere Linux-Benutzer oder Ihr Selbst ist tar großartig
Man muss vorsichtig mit Teer sein und wie die Dinge geteert / extrahiert werden, zum Beispiel wenn ich renne
/ home / myusername
Dadurch wird / home / myusername / etc / passwd erstellt
unsicher, ob alle Versionen von tar dies tun:
quelle
@amitchhajers Beitrag funktioniert für GNU tar. Wenn jemand diesen Beitrag findet und benötigt, um auf einem NON-
GNU
System zu arbeiten, kann er Folgendes tun:So erweitern Sie das Archiv:
quelle
pigz
was schneller ist, da es die CPU besser nutzen kann (eine Multithread-Implementierung von zip).