Wir haben die folgenden Dateien, die wir aus einer riesigen Tar-Datei herausgeschnitten haben
linuxaa
linuxab
linuxac
.
.
.
Hinweis - wir haben nur Dateien mitlinux[a-b][a-z]
und linux-xxxx
oder linux_xxx
, aber wir wollen nur die Dateien komprimieren mitlinux [a-b[a-z]
und normalerweise verwende ich dies, um tar.gz
die Datei erneut zu erstellen
cat linux[a-b][a-z] > centos7-rpm.tar.gz
meistens tar.gz
erfolgreich erstellt
aber manchmal scheint diese Datei beschädigt zu sein
Gibt es einen anderen Sicherheitsansatz zum Erstellen von tar.gz
Dateien?
Wir erhalten die folgenden Fehler, wenn die Datei tar ein Problem hat
gzip: stdin: invalid compressed data--format violated
tar: Unexpected EOF in archive
tar: Unexpected EOF in archive
tar: Error is not recoverable: exiting now
failed while , error 2
wichtiger Hinweis
wir können nurcat linux* > centos7-rpm.tar.gz
weil wir andere Dateien haben linux-tool
, die wir nicht komprimieren wollen
Antwort1
Manchmal ist die Dateiliste nicht richtig sortiert. Sie können Folgendes versuchen:
cat linux* > centos7-rpm.tar.gz
oder
cat linux?? > centos7-rpm.tar.gz
falls Sie andere Dateien haben, die mit Buchstaben beginnenlinux
Um jedoch hinsichtlich der Reihenfolge sicher zu sein, können Sie Folgendes versuchen:
cat $(ls -1 linux[a-b][a-z]|sort) > centos7-rpm.tar.gz
ls -1
generiert eine Ausgabe pro Zeile. sort
stellt sicher, dass die Dateiliste richtig sortiert ist (wenn Sie den Befehl „Split“ zum Erstellen der Liste verwenden)