Komprimieren und Extrahieren von Dateien mit dem Befehl tar unter Linux

Der Befehl tar unter Linux wird häufig zum Erstellen von .tar.gz- oder .tgz-Archivdateien verwendet, die auch als "Tarballs" bezeichnet werden. Dieser Befehl bietet eine große Anzahl von Optionen, aber Sie müssen sich nur ein paar Buchstaben merken, um schnell Archive mit tar zu erstellen. Der Befehl tar kann auch die resultierenden Archive extrahieren.

Der in Linux-Distributionen enthaltene Befehl GNU tar verfügt über eine integrierte Komprimierung. Es kann ein .tar-Archiv erstellen und es dann mit gzip- oder bzip2-Komprimierung in einem einzigen Befehl komprimieren. Aus diesem Grund ist die resultierende Datei eine .tar.gz-Datei oder eine .tar.bz2-Datei.

Komprimieren Sie ein gesamtes Verzeichnis oder eine einzelne Datei

Verwenden Sie den folgenden Befehl, um ein ganzes Verzeichnis oder eine einzelne Datei unter Linux zu komprimieren. Es komprimiert auch jedes andere Verzeichnis in einem von Ihnen angegebenen Verzeichnis - mit anderen Worten, es funktioniert rekursiv.

tar -czvf name-of-archive.tar.gz / path / to / verzeichnis-oder-datei

Folgendes bedeuten diese Schalter tatsächlich:

  • -c: C reate ein Archiv.
  • -z: Komprimiere das Archiv mit g z ip.
  • -v: Zeigt den Fortschritt im Terminal an, während das Archiv erstellt wird. Dies wird auch als " v erbose" -Modus bezeichnet. Das v ist in diesen Befehlen immer optional, aber hilfreich.
  • -f: Hier können Sie die angeben f ilename des Archivs.

Angenommen, Sie haben ein Verzeichnis mit dem Namen "stuff" im aktuellen Verzeichnis und möchten es in einer Datei mit dem Namen archive.tar.gz speichern. Sie würden den folgenden Befehl ausführen:

tar -czvf archive.tar.gz Zeug

Angenommen, auf dem aktuellen System befindet sich unter / usr / local / Something ein Verzeichnis, das Sie in eine Datei mit dem Namen archive.tar.gz komprimieren möchten. Sie würden den folgenden Befehl ausführen:

tar -czvf archive.tar.gz / usr / local / Something

Komprimieren Sie mehrere Verzeichnisse oder Dateien gleichzeitig

VERBINDUNG: Verwalten von Dateien über das Linux-Terminal: 11 Befehle, die Sie kennen müssen

Während tar häufig zum Komprimieren eines einzelnen Verzeichnisses verwendet wird, können Sie damit auch mehrere Verzeichnisse, mehrere einzelne Dateien oder beides komprimieren. Geben Sie einfach eine Liste von Dateien oder Verzeichnissen anstelle einer einzelnen an. Angenommen, Sie möchten das Verzeichnis / home / ubuntu / Downloads, das Verzeichnis / usr / local / stuff und die Datei /home/ubuntu/Documents/notes.txt komprimieren. Sie würden einfach den folgenden Befehl ausführen:

tar -czvf archive.tar.gz / home / ubuntu / Downloads / usr / local / stuff /home/ubuntu/Documents/notes.txt

Listen Sie einfach so viele Verzeichnisse oder Dateien auf, wie Sie sichern möchten.

Verzeichnisse und Dateien ausschließen

In einigen Fällen möchten Sie möglicherweise ein gesamtes Verzeichnis komprimieren, bestimmte Dateien und Verzeichnisse jedoch nicht einschließen. Sie können dies tun, indem Sie --excludefür jedes Verzeichnis oder jede Datei, die Sie ausschließen möchten, einen Schalter anhängen .

Angenommen, Sie möchten / home / ubuntu komprimieren, aber nicht die Verzeichnisse / home / ubuntu / Downloads und /home/ubuntu/.cache. So würden Sie es machen:

tar -czvf archive.tar.gz / home / ubuntu --exclude = / home / ubuntu / Downloads --exclude = / home / ubuntu / .cache

Der --excludeSchalter ist sehr leistungsfähig. Es werden keine Namen von Verzeichnissen und Dateien verwendet - es werden tatsächlich Muster akzeptiert. Es gibt noch viel mehr, was Sie damit machen können. Sie können beispielsweise ein gesamtes Verzeichnis archivieren und alle MP4-Dateien mit dem folgenden Befehl ausschließen:

tar -czvf archive.tar.gz / home / ubuntu --exclude = *. mp4

Verwenden Sie stattdessen die bzip2-Komprimierung

Während die gzip-Komprimierung am häufigsten zum Erstellen von .tar.gz- oder .tgz-Dateien verwendet wird, unterstützt tar auch die bzip2-Komprimierung. Auf diese Weise können Sie bzip2-komprimierte Dateien erstellen, die häufig als .tar.bz2-, .tar.bz- oder .tbz-Dateien bezeichnet werden. Ersetzen Sie dazu einfach das -z für gzip in den Befehlen hier durch ein -j für bzip2.

Gzip ist schneller, komprimiert jedoch im Allgemeinen etwas weniger, sodass Sie eine etwas größere Datei erhalten. Bzip2 ist langsamer, komprimiert jedoch etwas mehr, sodass Sie eine etwas kleinere Datei erhalten. Gzip ist auch häufiger anzutreffen, wobei einige abgespeckte Linux-Systeme standardmäßig gzip-Unterstützung enthalten, jedoch keine bzip2-Unterstützung. Im Allgemeinen sind gzip und bzip2 jedoch praktisch dasselbe und beide funktionieren ähnlich.

Anstelle des ersten Beispiels zum Komprimieren des Stuff-Verzeichnisses würden Sie beispielsweise den folgenden Befehl ausführen:

tar -cjvf archive.tar.bz2 Zeug

Ein Archiv extrahieren

Sobald Sie ein Archiv haben, können Sie es mit dem Befehl tar extrahieren. Der folgende Befehl extrahiert den Inhalt von archive.tar.gz in das aktuelle Verzeichnis.

tar -xzvf archive.tar.gz

Es ist dasselbe wie der oben verwendete Befehl zum Erstellen von Archiven, außer dass der -xSwitch den Switch ersetzt -c. Gibt möchten Sie e x - Darm - Trakt eines Archivs anstelle eines erstellen.

Möglicherweise möchten Sie den Inhalt des Archivs in ein bestimmtes Verzeichnis extrahieren. Sie können dies tun, indem Sie den -CSchalter an das Ende des Befehls anhängen . Mit dem folgenden Befehl wird beispielsweise der Inhalt der Datei archive.tar.gz in das Verzeichnis / tmp extrahiert.

tar -xzvf archive.tar.gz -C / tmp

Wenn es sich bei der Datei um eine bzip2-komprimierte Datei handelt, ersetzen Sie das "z" in den obigen Befehlen durch ein "j".

Dies ist die einfachste Verwendung des Befehls tar. Der Befehl enthält eine große Anzahl zusätzlicher Optionen, daher können wir hier möglicherweise nicht alle auflisten. Für mehr Informationen. Führen Sie den Befehl info tar in der Shell aus, um die detaillierte Informationsseite des Befehls tar anzuzeigen. Drücken Sie die Taste q , um die Informationsseite zu verlassen, wenn Sie fertig sind. Sie können das Handbuch von tar auch online lesen.

Wenn Sie einen grafischen Linux-Desktop verwenden, können Sie auch das in Ihrem Desktop enthaltene Dienstprogramm zur Dateikomprimierung oder den Dateimanager verwenden, um .tar-Dateien zu erstellen oder zu extrahieren. Unter Windows können Sie mit dem kostenlosen 7-Zip-Dienstprogramm .tar-Archive extrahieren und erstellen.