Wie extrahiere ich ein verkettetes cpio-Archiv?

1950
Magicloud
% find a/ | cpio -o | gzip -c > alpha.gz % find b/ | cpio -o | gzip -c > bravo.gz % cat alpha.gz beta.gz > charlie.gz % gunzip charlie.gz 

Jetzt bekomme ich die Datei charlie, die ein verkettetes cpio-Archiv sein sollte. Aber cpio -id < charlieextrahiere nur den Inhalt von /. Wie könnte ich b / bekommen?

Hinzugefügt: Die Größe von Charlie entspricht Alpha plus Bravo. Und einige Schlüsselwörter zeigten, dass Charlie Daten von Bravo enthält.

4

1 Antwort auf die Frage

3
Gabe

Die Archive "alpha" und "bravo" enthalten unabhängig voneinander Archivende-Marker, die cpio mitteilen, dass dies geschehen ist. Dies ist beim Lesen von einem Band hilfreich, da das Archiv enden wird, das Band jedoch möglicherweise weiter läuft.

Genau wie beim Lesen von einem Band müssen Sie einen weiteren cpio-Lauf von derselben Position aus starten. Im Allgemeinen, weil Sie wissen, dass Sie nur über cpio-Archive verfügen, aber Sie sind sich vielleicht nicht ganz sicher, wie viele: Sie (while cpio -id ; do :; done) < charliewerden so lange weiterlaufen, bis cpio-Fehler auftreten ("vorzeitiges Archivende", wenn eof erreicht wird).

Entschuldigung, ich habe spät akzeptiert. Magicloud vor 10 Jahren 0