Übersicht
cpio ist ein Stream-orientierter Archivar, der von der Standardeingabe liest, um eine Dateiliste zu erhalten, oder auf die Standardausgabe schreibt, um ein Archiv zu erstellen. Dies bietet eine starke Flexibilität, wenn es über eine Pipe mit anderen Befehlen (z. B. find) verwendet wird.
Hauptmerkmale
- Drei Hauptbetriebsmodi: copy-out (-o), copy-in (-i), copy-pass (-p)
- Flexible Verarbeitung von Dateilisten über Pipes
- Unterstützung für verschiedene Archivformate
- Verwendung für Backups, Wiederherstellungen und das Kopieren von Verzeichnisstrukturen
Hauptoptionen
cpio erfordert eine Option zur Angabe des Betriebsmodus und bietet darüber hinaus verschiedene Hilfsoptionen.
Betriebsmodi
Allgemeine Optionen
Erzeugter Befehl:
Kombinieren Sie die Befehle.
Beschreibung:
`cpio` Führen Sie den Befehl aus.
Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.
Anwendungsbeispiele
Verschiedene Anwendungsbeispiele, die die drei Hauptmodi von cpio nutzen.
Alle Dateien im aktuellen Verzeichnis in ein Archiv packen
find . -print0 | cpio -ov0 > archive.cpio
Der Befehl find erstellt eine Liste aller Dateien im aktuellen Verzeichnis, die dann mit cpio -ov in die Datei archive.cpio archiviert werden. Die Option -0 stellt sicher, dass Dateinamen mit Leerzeichen sicher verarbeitet werden.
Dateien aus einem Archiv extrahieren
cpio -ivd < archive.cpio
Alle Dateien aus der erstellten Datei archive.cpio in das aktuelle Verzeichnis extrahieren. Die Option -d erstellt bei Bedarf automatisch Verzeichnisse.
Verzeichnisstruktur an einen anderen Ort kopieren
find . -depth -print0 | cpio -pd0v /new/directory
Alle Dateien und die Verzeichnisstruktur des aktuellen Verzeichnisses in den Pfad /new/directory kopieren. Der Modus -p kopiert direkt, ohne ein Archiv zu erstellen. -d steht für Verzeichniserstellung und -v für ausführliche Ausgabe.
Nur Dateien mit einem bestimmten Muster aus einem Archiv extrahieren
cpio -ivd 'report*' < archive.cpio
Nur Dateien extrahieren, die mit 'report' beginnen, aus archive.cpio. Platzhalter können verwendet werden.
Tipps & Hinweise
cpio ist ein mächtiges Werkzeug, aber es ist wichtig, die richtige Verwendung zu beherrschen.
Nützliche Tipps zur Verwendung von cpio
- Verwendung mit dem Befehl `find`: Da `cpio` eine Dateiliste von der Standardeingabe erwartet, ist es üblich, den Befehl `find` zu verwenden, um eine Dateiliste mit komplexen Bedingungen zu erstellen und diese dann an `cpio` zu übergeben.
- Verwendung der Option `-0`: Wenn Dateinamen Leerzeichen oder Sonderzeichen enthalten können, ist es wichtig, `find -print0` und `cpio -0` zusammen zu verwenden, um sicherzustellen, dass Dateinamen korrekt verarbeitet werden.
- Wichtigkeit der Moduswahl: Die drei Modi `-o`, `-i` und `-p` haben jeweils unterschiedliche Zwecke, daher sollte der richtige Modus für die jeweilige Aufgabe ausgewählt werden.
- Absolute und relative Pfade: Da `cpio` die Pfade, wie sie im Archiv gespeichert sind, verwendet, werden beim Extrahieren Dateien relativ zum aktuellen Verzeichnis extrahiert, wenn beim Erstellen des Archivs relative Pfade wie `find .` verwendet wurden. Wenn absolute Pfade archiviert werden, werden diese auch beim Extrahieren beibehalten.