Cheatsheet für allgemeine GNU-Tar-Befehle

Cheatsheet für allgemeine GNU-Tar-Befehle

GNU Tar ist ein leistungsstarkes Befehlszeilen-Archivierungsprogramm für Linux und andere UNIX-ähnliche Betriebssysteme . Es wurde erstmals in den Bell Laboratories entwickelt, um digitale Medien zuverlässig auf Archivband-Backups zu speichern. Heutzutage ist GNU Tar ein „Allrounder“, der jede Datei in einem einfach zu übertragenden Format speichert.

Eine der leistungsstarken Funktionen von GNU Tar ist seine Flexibilität im Hinblick auf die Datenverarbeitung. Es bietet Optionen, mit denen Sie ein Archiv komprimieren, extrahieren und sogar an UNIX-Pipes umleiten können. Dies macht GNU Tar zu einem nützlichen Werkzeug zum Speichern von Daten und deren Bearbeitung über die Befehlszeile.

Dieses Cheatsheet zeigt Ihnen die Befehle in GNU Tar, mit denen Sie Tar-Dateien unter Linux bearbeiten können. Darüber hinaus werden einige erweiterte Optionen angezeigt, mit denen Sie einen Blick in die Interna eines Archivs werfen können.

Befehl Beschreibung
Archive erstellen
tar -cf. /output.tar. /Eingang/ Erstellen Sie ein Archiv mit dem Namen „output.tar“ aus dem Ordner „input“.
tar -cf. /device.tar /dev/sda1 Erstellen Sie ein Archiv mit dem Namen „device.tar“ unter Verwendung des Inhalts der gesamten sda1-Partition.
tar -czf. /output.tar.gz. /Eingang/ Erstellen Sie ein Archiv mit dem Namen „output.tar“ aus dem Ordner „input“.
tar -cjf. /output.tar.bz2. /Eingang/ Erstellen Sie ein Archiv mit dem Namen „output.tar.gz“ und komprimieren Sie es mit dem GZIP-Algorithmus.
tar -cJf. /output.tar.xz. /Eingang/ Erstellen Sie ein neues Archiv mit dem Namen „output.tar.xz“ und komprimieren Sie es mit dem XZ-Algorithmus.
tar -cZf. /output.tar.z. /Eingang/ Erstellen Sie ein neues Archiv mit dem Namen „output.tar.xz“ und komprimieren Sie es mit dem XZ-Algorithmus.
tar –lzip -cf. /output.tar.lz. /Eingang/ Erstellen Sie ein neues Archiv mit dem Namen „output.tar.z“ und komprimieren Sie es mit dem LZ-Algorithmus.
tar –lzop -cf. /output.tar.lzo. /Eingang/ Erstellen Sie ein neues Archiv mit dem Namen „output.tar.lz“ und komprimieren Sie es mit dem LZIP-Algorithmus.
tar -cML 1024000 -f. /output.tar. /große.Datei Teilen Sie die Datei „large.file“ in einen Satz mehrteiliger 1-GB-Archive auf.
tar -hcf. /output.tar. /input.link Erstellen Sie ein neues Archiv mit dem Namen „output.tar.lzo“ und komprimieren Sie es mit dem LZOP-Algorithmus.
tar –format=v7 -cf. /output.tar. /Eingang/ Stellen Sie sicher, dass das „output.tar“-Archiv mit dem ursprünglichen V7-UNIX-TAR kompatibel ist.
tar –sort=name -cf. /output.tar. /Eingang/ Erstellen Sie ein neues Archiv mit dem Namen „output.tar“ und sortieren Sie dessen Inhalt alphabetisch.
tar –warning=none -cf. /output.tar. /Eingang/ Deaktivieren Sie alle Warnmeldungen beim Erstellen von „output.tar“.
tar –warning=all -cf. /output.tar. /Eingang/ Drucken Sie alle Warnmeldungen aus, wenn Sie „output.tar“ erstellen.
tar -wcf. /output.tar. /Eingang/ Aktivieren Sie den interaktiven Modus von Tar während der Archiverstellung.
Archivmitglieder filtern
tar –exclude-backups -cf. /output.tar. /Eingang/ Erstellen Sie ein Archiv, fügen Sie jedoch keine Datenbanksperrdateien und binären Sicherungsdateien in die endgültige Ausgabe ein.
tar –exclude-caches -cf. /output.tar. /Eingang/ Erstellen Sie ein Archiv, fügen Sie jedoch keine Cache-Datei in die endgültige Ausgabe ein.
tar –exclude-vcs -cf. /output.tar. /Eingang/ Erstellen Sie ein Archiv, aber fügen Sie keine Datei mit dem Namen „foo“ in die endgültige Ausgabe ein.
tar –exclude=foo -cf. /output.tar. /Eingang/ Erstellen Sie ein Archiv, aber fügen Sie keine Datei mit dem Namen „foo“ in die endgültige Ausgabe ein.
tar –exclude-tag-all=foo -cf. /output.tar. /Eingang/ Erstellen Sie ein Archiv, schließen Sie jedoch keinen Ordner ein, der die Datei „foo“ enthält.
tar –no-recursion -cf. /output.tar. /Eingang/ Erstellen Sie ein Archiv, wechseln Sie jedoch nicht in Unterverzeichnisse im aktuellen Ordner.
tar –no-unquote -cf. /output.tar. /“Eingang“/ Erstellen Sie ein Archiv und behandeln Sie die Anführungszeichen im Eingabeordner als Literalzeichen.
tar -Pcf. /output.tar /home/$USER/input/ Erstellen Sie ein Archiv und stellen Sie sicher, dass alle darin enthaltenen Verzeichnispfade absolut sind.
tar –newer=2023-06-30 -cf. /output.tar. /Eingang/ Erstellen Sie ein Archiv, aber schließen Sie nur Dateien in den „Input“-Ordner ein, die nach dem 30. Juni erstellt wurden.
tar –remove-files -cf. /output.tar. /Eingang/ Erstellen Sie ein Archiv und entfernen Sie den Inhalt des „Input“-Ordners, sobald das Archiv fertig ist.
tar -Wcf. /output.tar. /Eingang/ Erstellen Sie ein Archiv und überprüfen Sie anschließend seine Integrität.
tar –ignore-case -cf. /output.tar. /Eingang/ Deaktivieren Sie die Groß-/Kleinschreibung von Tar beim Erstellen neuer Archive.
tar -C /other/directory -cf. /output.tar. /Eingang/ Verschieben Sie das aktuelle Arbeitsverzeichnis von Tar und erstellen Sie ein Archiv mit dem darin enthaltenen Eingabeordner.
Archive prüfen
tar -tf. /output.tar Drucken Sie den Inhalt von „output.tar“ in einem kurzen Format aus.
tar -tvf. /output.tar Drucken Sie den Inhalt von „output.tar“ im Langformat aus.
tar –index-file=foo -tvf. /output.tar Drucken Sie den Inhalt von „output.tar“ im Langformat aus und speichern Sie ihn in der Datei „foo“.
tar –utc -tvf. /output.tar Drucken Sie den Inhalt von „output.tar“ aus und konvertieren Sie alle Änderungszeiten in UTC.
tar –totals -tvf. /output.tar Drucken Sie den Inhalt von „output.tar“ aus und zeigen Sie die Gesamtzahl der Bytes für das Archiv an.
tar –checkpoint -cf. /output.tar. /Eingang/ Drucken Sie den Archivierungsprozess der aktuellen TAR-Datei alle 10 Archivmitglieder aus.
tar -tvRf. /output.tar Drucken Sie die Blocknummer für jedes Mitglied in „output.tar“.
Archive ändern
tar –group=foo -xf. /output.tar Fügen Sie neuere Inhalte nur am Ende des „output.tar“-Archivs ein.
tar –user=foo -xf. /output.tar Fügen Sie am Ende des „output.tar“-Archivs nur neuere Inhalte ein.
tar -rf. /output.tar. /neue-eingabe/ Fügen Sie den Inhalt des Ordners „new-input“ am Ende des „output.tar“-Archivs ein.
tar -uf. /output.tar. /Eingang/ Aktualisieren Sie den Eigentümer aller Archivinhalte auf „foo“.
tar –checkpoint-action=’cmd‘ -cf. /output.tar. /Eingang/ Führen Sie alle 10 Archivmitglieder den Befehl „cmd“ für das Archiv aus.
Archive extrahieren
tar -xf. /output.tar Extrahieren Sie „output.tar“ im aktuellen Arbeitsverzeichnis.
tar -xkf. /output.tar Extrahieren Sie „output.tar“, ersetzen Sie jedoch keine derzeit im Verzeichnis vorhandenen Dateien.
tar – neuere Dateien behalten -xf. /output.tar Extrahieren Sie „output.tar“, aber ersetzen Sie keine Dateien, die neuer als der Inhalt des Archivs sind.
tar –no-overwrite-dir -xf. /output.tar Extrahieren Sie „output.tar“, aber ändern Sie nicht die Eigenschaften eines Ordners im aktuellen Verzeichnis.
tar –keep-directory-symlink -xf. /output.tar Extrahieren Sie „output.tar“, aber ändern Sie keine symbolischen Links im aktuellen Verzeichnis.
tar –overwrite -xf. /output.tar Extrahieren Sie „output.tar“ und ersetzen Sie alle Dateien im aktuellen Verzeichnis.
tar -mxf. /output.tar Extrahieren Sie „output.tar“, aber verwenden Sie beim Extrahieren nicht die „mtime“-Werte der archivierten Dateien.
tar –preserve -xf. /output.tar Extrahieren Sie „output.tar“ und aktualisieren Sie die Benutzer- und Gruppenberechtigungen nicht auf den aktuellen Benutzer.
tar -wxf. /output.tar Aktivieren Sie den interaktiven Modus von Tar während der Archivextraktion.
tar –strip-components=3 -xf. /output.tar Extrahieren Sie nur alle Dateien in „output.tar“, die drei Verzeichnisse tief sind.
tar –transform=s/pattern/string/ -xf. /output.tar Extrahieren Sie das Archiv „output.tar“ und ersetzen Sie jede Datei mit dem Namen „pattern“ durch „string“.
tar –warning=none -xf. /output.tar Deaktivieren Sie alle Warnmeldungen beim Extrahieren von „output.tar“.
tar –warning=all -xf. /output.tar Drucken Sie alle Warnmeldungen aus, während Sie „output.tar“ extrahieren.

Bildnachweis: Unsplash . Alle Änderungen von Ramces Red.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert