Ich habe ein Tar-Archiv: "linux-source-4.9.tar.xz".
Das entpacke ich mit "tar xaf", dabei wird dann automatisch der Ordner "linux-source-4.9" erstellt mit den extrahierten Dateien.
Gut, nun ist das Ergebnis 2,5G groß , das muss man eigentlich nicht unbedingt noch einmal entpacken.
Wie kann ich also ein Tar-Archiv so entpacken, dass nur die Änderungen geschrieben werden, aber nicht alles nochmal? So wie rsync mit --delete Option. Also vorhandene Dateien werden nur geupdatet, wenn sie sich von der neueren Version unterscheiden. Außerdem werden Dateien, die nicht mehr existieren, gelöscht.
Geht das? Oder wenn nicht, gibt es dann vielleicht irgendeine andere Möglichkeit, das von mir Gewünschte zu erreichen?
In "man tar" finde ich im entsprechenden Abschnitt nur Folgendes, von dem mir nichts zu passen scheint:
Code: Alles auswählen
Overwrite control
These options control tar actions when extracting a file over an existing copy on disk.
-k, --keep-old-files
Don't replace existing files when extracting.
--keep-newer-files
Don't replace existing files that are newer than their archive copies.
--no-overwrite-dir
Preserve metadata of existing directories.
--one-top-level[=DIR]
Extract all files into DIR, or, if used without argument, into a subdirectory named by the base name of the archive (minus standard compression suffixes recognizable by --auto-compress).
--overwrite
Overwrite existing files when extracting.
--overwrite-dir
Overwrite metadata of existing directories when extracting (default).
--recursive-unlink
Recursively remove all files in the directory prior to extracting it.
--remove-files
Remove files from disk after adding them to the archive.
--skip-old-files
Don't replace existing files when extracting, silently skip over them.
-U, --unlink-first
Remove each file prior to extracting over it.
-W, --verify
Verify the archive after writing it.