it-swarm.com.de

Wie kann ich mit dem Befehl tar Dateien ohne Komprimierung gruppieren?

Ich habe einen sehr großen Ordner mit über 120.000 Dateien. und ich muss sie an einen anderen Ort auf demselben Computer (derselben Partition) verschieben.

Ich möchte den Befehl tar verwenden, um sie als eine Einheit zu gruppieren und dann mv bis zum Endpunkt.

Welchen Befehl muss ich ausführen, um tar sie alle zusammen und nichts zu komprimieren (ich brauche das schnellste Ergebnis).

52
sergserg

tar komprimiert nicht standardmäßig. Fügen Sie einfach keine Komprimierungsoption hinzu:

tar cvf myfolder.tar myfolder

Ich beziehe Hennes ' Kommentar in meine Antwort ein, da er nützliche Informationen hinzufügt:

TAR (Tape Archive) ist ursprünglich ein Unix-Programm, mit dem Archive auf Band erstellt werden. Da alle Geräte unter Unix als Dateien behandelt werden, ist es einfach, nicht auf ein Band zu schreiben, sondern auf eine Datei. Dies geschieht normalerweise mit dem Flag -f. Der Befehl tar cvf myfolder.tar myfolder bedeutet tar, create, verbose file filename_to_create what_to_tar. Es gibt nirgendwo eine Komprimierung. Tar-Archive (als Dateien) wurden häufig mit dem Komprimierungsprogramm komprimiert und erhielten die Endung .Z (z. B. file.tar.Z). Später wurde dies mit der Z-Flagge in gtar aufgenommen

78
terdon

Die @ terdon Antwort ist richtig.

Aber ich habe einen kleinen Fehler gemacht, als ich tar cvf myfolder.tar.gz myfolder gemacht habe. Ich wollte dieselben Endnamen für die Dateien im selben Pfad tar.gz, auch wenn sie nicht komprimiert sind.

Wenn Sie also .gz, .z am Ende des Dateinamens einfügen, den Sie tarieren möchten, wird die tar-App verstehen, dass Sie eine Komprimierung verwenden möchten, und dies gilt entsprechend für Ihre Eingabe (gz = gzip).

Wenn Sie also eine Erweiterung wie diesen tar.gz verwenden möchten, stellen Sie sicher, dass Sie das Flag --no-auto-compress verwenden.

--no-auto-compress    do not use archive suffix to determine the compression 
program
2
Ratata Tata