Samstag, 23.11.2024 (CET) um 11:12 Uhr
www.windowspage.de 20 Jahre Windowspage
News:
Herzlich Willkommen bei Windowspage. Alles rund um Windows.

Tipps - WSL - Kopieren von Dateien zwischen Archiven und Verzeichnissen (ab 1703)
Detailbeschreibung
Betriebssystem: Windows 10, Windows 11

Zur Archivierung oder für die Datensicherung (Backup) werden häufig Dateien und Verzeichnisse in einer Archivdatei zusammengefasst. Bei den Linux-Systemen wird häufig hierfür das Format CPIO (steht für "copy input output") oder das bekanntere TAR (steht für "tape archiver") verwendet. Beide Formate unterstützen im Gegensatz zum RAR- oder ZIP-Format keine Komprimierung der einzelnen Dateien. Mit einem Programm bzw. Befehl (in den meisten Linux-Distributionen bereits enthalten) können die Archivdateien CPIO und TAR erstellt und auch wieder extrahiert werden.

Es gibt drei grundlegende Arbeitsmodi:

  • Modus "copy-out": Kopiert Dateien in ein Archiv. Es wird von der Standardeingabe eine Liste mit Dateien (ein Dateiname pro Zeile) gelesen und dann als Archivdatei auf die Standardausgabe geschrieben.
  • Modus "copy-in": Extrahiert oder zeigt Dateien eines Archivs an. Die Archivdatei wird von der Standardeingabe gelesen. Werden zusätzlich keine Muster angegeben, so werden alle Dateien extrahiert.
  • Modus "copy-pass": Kopiert ein Verzeichnis oder Verzeichnisbaum in ein anderes Verzeichnis ohne dabei tatsächlich ein Archiv zu benutzen.

So geht's (Dateien und Verzeichnisse archivieren):

  • Starten Sie die entsprechende WSL-Distribution (z. B. "Debian" oder "Ubuntu").
  • Archiv mit Dateiliste erstellen:
    • Geben Sie als Befehl "cpio - o< Dateiliste > Archivdatei" ein. Z. B.: "cpio -o < liste.txt > windowspage.cpio"
  • Dateien archivieren:
    • Geben Sie als Befehl "ls | cpio -o > Archivdatei" ein. Z. B.: "ls | cpio -o > windowspage.cpio"
  • Verzeichnis (inkl. Unterverzeichnisse) archivieren:
    • Geben Sie als Befehl "find [Verzeichnis] | cpio -o > Archivdatei" ein. Z. B.: "find . | cpio -o > windowspage.cpio"
  • Drücken Sie die Eingabetaste.
  • Die Archiv-Datei mit den angegebenen Dateien wird erstellt. ("windowspage.cpio").

ls | cpio -ov > ../windowspage.cpio

So geht's (Datei und Verzeichnisse extrahieren):

  • Starten Sie die entsprechende WSL-Distribution (z. B. "Debian" oder "Ubuntu").
  • Alle Dateien extrahieren:
    • Geben Sie als Befehl "cpio -i < Archivdatei" ein. Z. B.: "cpio -i < windowspage.cpio"
  • Bestimmte Dateien extrahieren:
    • Geben Sie als Befehl "cpio -i [Muster] < Archivdatei" ein. Z. B.: "cpio -i windows* < windowspage.cpio"
  • Drücken Sie die Eingabetaste.
  • Die Datei(en) wird/werden nun im selben Verzeichnis extrahiert.

cpio -iv < windowspage.cpio

So geht's (Verzeichnisse kopieren):

  • Starten Sie die entsprechende WSL-Distribution (z. B. "Debian" oder "Ubuntu").
  • Dateien mit Dateiliste in anderes Verzeichnis kopieren:
    • Geben Sie als Befehl "cpio -p [Zielverzeichnis] < [Dateiliste]" ein. Z. B.: "cpio -p /home/windowspage/copy < liste.txt"
  • Verzeichnis (inkl. Unterverzeichnisse) kopieren:
    • Geben Sie als Befehl "find [Verzeichnis] | cpio -p [Zielverzeichnis]" ein. Z. B.: "find . | cpio -p /home/windowspage/copy"
  • Drücken Sie die Eingabetaste.
  • Die Datei(en) wird/werden nun in das angegebene Verzeichnis kopiert.

find . | cpio -p /home/windowspage/copy

CPIO-Parameter (Auszug):

Parameter Modus Beschreibung
-a copy-out, copy-pass Die Zugriffszeit der Dateien wird nach dem Lesevorgang wiederhergestellt.
-A copy-out Die Dateien werden an ein bestehendes Archiv angehängt.
-c copy-in, copy-out, copy-pass Das alte ASCII Format wird verwendet.
-d copy-in, copy-pass Verzeichnisse werden - falls notwendig - erstellt.
-E [Datei] copy-in Es werden nur Dateien mit dem angegebenen Muster gelesen.
-f copy-in Es werden nur Dateien kopiert, die nicht dem angegebene Muster entsprechen.
-F [Archiv] copy-in, copy-out Die angegebene Datei wird verwendet und nicht die Standardeingabe oder Standardausgabe.
-H [Format] copy-in, copy-out, copy-pass Das angegebene Format wird benutzt. Gültige Formate lauten: "bin", "odc", "newc", "crc", "tar", "ustar", "hpbin", "hpodc"
-i copy-in Extrahiert Dateien von einem Archiv ("copy-in").
-I [Archiv] copy-in Gibt den Archiv-Dateinamen und nicht die Standardeingabe an.
-l copy-pass Es werden Links erstellt (Datei nicht kopiert).
-m copy-in, copy-pass Bei der Erstellung der Datei ist das Änderungsdatum enthalten.
-o copy-out Erstellt ein neues Archiv ("copy-out").
-O [Archiv] copy-out Das Archiv wird in die angegebene Datei und nicht auf die Standardausgabe geschrieben.
-p copy-pass Der Modus "copy-pass" wird aktiviert.
-t copy-in Das Inhaltsverzeichnis wird ausgegeben.
-u copy-in, copy-pass Alle Dateien werden ohne Nachfrage ersetzt.
-v copy-in, copy-out, copy-pass Ausführliche Ausgabe der Vorgänge.

Weitere Beispiele:

  • Alle Dateien des aktuellen Verzeichnis als Archivdatei im TAR-Format ("windowspage.tar") erstellen und ausführliche Informationen ausgeben:
    "ls | cpio -ov -H tar > windowspage.tar"
  • Die Archivdatei im TAR-Format ("windowspage.tar") extrahieren und ausführliche Informationen anzeigen:
    "cpio -iv -F windowspage.tar"
  • Inhalt der Archivdatei "windowspage.tar" ausgeben (ohne Dateien zu extrahieren):
    "cpio -it -F windowspage.tar"

Hinweis:

  • Weitere Optionen zur Steuerung können mit dem Befehl "cpio --help" ausgegeben werden.

Versionshinweis:

  • Die Linux-Distributionen benötigen mindestens Windows 10 Version 1703.

Querverweise:


Windowspage - Weitere interessante Tipps und Einstellungen
Tipps für Windows 10, Windows 11
Statistik

Unsere Webseite verwendet technisch notwendige Cookies ("berechtigtes Interesse"). Darüberhinausgehend (z. B. für Statistiken oder Marketing) erfolgt keine Speicherung von Cookies. Klicken Sie auf "Ich stimme zu", um Cookies zu akzeptieren und direkt unsere Webseite besuchen zu können. Weitere Informationen...

Valid HTML 4.01 Transitional  CSS ist valide!