GNU/Linux >> LINUX-Kenntnisse >  >> Linux

10 Tar-Befehlsbeispiele in Linux zum Erstellen und Extrahieren von Archiven

Tar-Befehl unter Linux

Der Befehl tar (tape archive) wird verwendet, um Archive unter Linux zu erstellen und zu extrahieren. Es kann mehrere Dateien in einem einzigen Archiv komprimieren und speichern.

Die häufig vorkommenden Dateierweiterungen sind .tar.gz und .tar.bz2, bei denen es sich um ein tar-Archiv handelt, das mit gzip- bzw. bzip-Algorithmen weiter komprimiert wird.

In diesem Tutorial werfen wir einen Blick auf einfache Beispiele für die Verwendung des tar-Befehls, um tägliche Aufgaben zum Erstellen und Extrahieren von Archiven auf Linux-Desktops oder -Servern zu erledigen.

Mit dem tar-Befehl

Der tar-Befehl ist standardmäßig auf den meisten Linux-Systemen verfügbar und muss nicht separat installiert werden.

Bei tar gibt es 2 Komprimierungsformate, gzip und bzip. Die Option "z" gibt gzip an und die Option "j" gibt bzip an. Es ist auch möglich, unkomprimierte Archive zu erstellen.

1. Extrahieren Sie ein tar.gz-Archiv

Nun, die häufigere Verwendung ist das Extrahieren von Tar-Archiven. Der folgende Befehl entpackt die Dateien aus einem tar.gz-Archiv

$ tar -xvzf tarfile.tar.gz

Hier ist eine kurze Erklärung der verwendeten Parameter -

x - Dateien extrahierenv - Ausführlich, die Dateinamen einzeln ausgeben, während sie extrahiert werdenz - Die Datei ist eine "gzipped"-Dateif - Verwenden Sie das folgende tar-Archiv für die Operation

Dies sind einige der wichtigen Optionen, die Sie sich merken sollten

Extrahieren Sie tar.bz2/bzip-Archive

Dateien mit der Erweiterung bz2 werden mit dem bzip-Algorithmus komprimiert und der Befehl tar kann auch damit umgehen. Verwenden Sie die j-Option anstelle der z-Option.

$ tar -xvjf Archivdatei.tar.bz2

2. Extrahieren Sie Dateien in ein bestimmtes Verzeichnis oder einen bestimmten Pfad

Um die Dateien in ein bestimmtes Verzeichnis zu extrahieren, geben Sie den Pfad mit der Option „-C“ an. Beachten Sie, dass es sich um ein großes C handelt.

$ tar -xvzf abc.tar.gz -C /opt/Ordner/

Stellen Sie jedoch zuerst sicher, dass das Zielverzeichnis existiert, da tar das Verzeichnis nicht für Sie erstellt und fehlschlägt, wenn es nicht existiert.

3. Extrahieren Sie eine einzelne Datei

Um eine einzelne Datei aus einem Archiv zu extrahieren, fügen Sie einfach den Dateinamen nach dem Befehl wie folgt hinzu

$ tar -xz -f abc.tar.gz "./new/abc.txt"

Mehr als eine Datei kann im obigen Befehl so angegeben werden

$ tar -xv -f abc.tar.gz "./new/cde.txt" "./new/abc.txt"

4. Extrahieren Sie mehrere Dateien mit Platzhaltern

Platzhalter können verwendet werden, um eine Reihe von Dateien zu extrahieren, die mit den angegebenen Platzhaltern übereinstimmen. Zum Beispiel alle Dateien mit der Erweiterung ".txt".

$ tar -xv -f abc.tar.gz --wildcards "*.txt"

5. Inhalte des tar-Archivs auflisten und durchsuchen

Wenn Sie nur den Inhalt des tar-Archivs auflisten und nicht extrahieren möchten, verwenden Sie die Option "-t". Der folgende Befehl gibt den Inhalt eines mit gzip komprimierten Tar-Archivs aus,

$ tar -tz -f abc.tar.gz./new/./new/cde.txt./new/subdir/./new/subdir/in.txt./new/abc.txt... 

Leiten Sie die Ausgabe an grep, um eine Datei zu durchsuchen, oder an den Befehl less, um die Liste zu durchsuchen. Mit der ausführlichen Option "v" werden zusätzliche Details zu jeder Datei ausgegeben.

Verwenden Sie für tar.bz2/bzip-Dateien die Option „j“

Verwenden Sie den obigen Befehl in Kombination mit dem grep-Befehl, um das Archiv zu durchsuchen. Ganz einfach!

$ tar -tvz -f abc.tar.gz | grep abc.txt-rw-rw-r-- erleuchtet/erleuchtet 0 2015-01-13 11:40 ./new/abc.txt

6. Erstellen Sie ein tar/tar.gz-Archiv

Nachdem wir nun gelernt haben, wie man bestehende Tar-Archive extrahiert, ist es an der Zeit, neue zu erstellen. Der tar-Befehl kann angewiesen werden, ausgewählte Dateien in einem Archiv oder einem ganzen Verzeichnis abzulegen. Hier sind einige Beispiele.

Der folgende Befehl erstellt ein tar-Archiv unter Verwendung eines Verzeichnisses und fügt alle darin enthaltenen Dateien sowie Unterverzeichnisse hinzu.

$ tar -cvf abc.tar ./new/./new/./new/cde.txt./new/abc.txt

Das obige Beispiel erstellt kein komprimiertes Archiv. Nur ein einfaches Archiv, das mehrere Dateien ohne wirkliche Komprimierung zusammenfügt.

Verwenden Sie zum Komprimieren die Option "z" oder "j" für gzip bzw. bzip.

$ tar -cvzf abc.tar.gz ./new/
Die Erweiterung des Dateinamens spielt keine Rolle. "tar.gz" und tgz sind gängige Erweiterungen für mit gzip komprimierte Dateien. „.tar.bz2“ und „.tbz“ sind häufig verwendete Erweiterungen für bzip-komprimierte Dateien.

7. Fragen Sie nach einer Bestätigung, bevor Sie Dateien hinzufügen

Eine nützliche Option ist "w", die tar dazu bringt, für jede Datei eine Bestätigung zu verlangen, bevor sie dem Archiv hinzugefügt wird. Dies kann manchmal nützlich sein.

Es würden nur die Dateien hinzugefügt, die mit Ja beantwortet werden. Wenn Sie nichts eingeben, wäre die Standardantwort ein "Nein".

# Bestimmte Dateien hinzufügen$ tar -czw -f abc.tar.gz ./new/*add './new/abc.txt'?yadd './new/cde.txt'?yadd './new /newfile.txt'?nadd './new/subdir'?yadd './new/subdir/in.txt'?n# Jetzt die hinzugefügten Dateien auflisten$ tar -t -f abc.tar.gz./new/ abc.txt./new/cde.txt./new/subdir/

8. Dateien zu bestehenden Archiven hinzufügen

Die Option r kann verwendet werden, um Dateien zu bestehenden Archiven hinzuzufügen, ohne neue erstellen zu müssen. Hier ist ein kurzes Beispiel

$ tar -rv -f abc.tar abc.txt
Dateien können nicht zu komprimierten Archiven (gz oder bzip) hinzugefügt werden. Dateien können nur einfachen Tar-Archiven hinzugefügt werden.

9. Dateien zu komprimierten Archiven hinzufügen (tar.gz/tar.bz2)

Es wurde bereits erwähnt, dass es nicht möglich ist, Dateien zu komprimierten Archiven hinzuzufügen. Mit einem einfachen Trick geht das aber trotzdem. Verwenden Sie den Befehl gunzip, um das Archiv zu dekomprimieren, fügen Sie die Datei dem Archiv hinzu und komprimieren Sie es erneut.

$ gunzip archive.tar.gz$ tar -rf archive.tar ./path/to/file$ gzip archive.tar

Verwenden Sie für bzip-Dateien die Befehle bzip2 bzw. bunzip2.

10. Sicherung mit tar

Ein reales Szenario besteht darin, Verzeichnisse in regelmäßigen Abständen zu sichern. Der tar-Befehl kann so geplant werden, dass er solche Backups über cron erstellt. Hier ist ein Beispiel -

$ tar -cvz -f archive-$(date +%Y%m%d).tar.gz ./new/

Führen Sie den obigen Befehl über cron aus und es würde weiterhin Sicherungsdateien mit Namen wie -
'archive-20150218.tar.gz' erstellen.

Achten Sie natürlich darauf, dass der Speicherplatz nicht mit immer größeren Archiven überfüllt wird.

11. Archivdateien während der Erstellung überprüfen

Die Option "W" kann verwendet werden, um die Dateien nach dem Erstellen von Archiven zu überprüfen. Hier ist ein kurzes Beispiel.

$ tar -cvW -f abc.tar ./new/./new/./new/cde.txt./new/subdir/./new/subdir/in.txt./new/newfile.txt. /new/abc.txtVerify ./new/Verify ./new/cde.txtVerify ./new/subdir/Verify ./new/subdir/in.txtVerify ./new/newfile.txtVerify ./new/abc.txt 

Beachten Sie, dass die Überprüfung bei komprimierten Archiven nicht durchgeführt werden kann. Es funktioniert nur mit unkomprimierten Tar-Archiven.

Schlussfolgerung

Neben dem tar-Befehl stehen viele andere Befehle auf der Linux-Befehlszeile zur Verfügung, die zum Komprimieren und Packen von Dateien in einem Archiv verwendet werden können. Zum Beispiel können die Befehle zip und unzip auch verwendet werden, um komprimierte Archive zu erstellen.

Der Befehl zip unterstützt auch den Befehl zipcloak, mit dem passwortgeschützte .zip-Archive erstellt werden können. Das tar-Format unterstützt keinerlei Verschlüsselung. Wenn Sie passwortgeschützte Tar-Archive erstellen möchten, verwenden Sie die ccrypt Befehl zum Verschlüsseln der .tar- oder .tar.gz-Datei.

Das ist erstmal alles. Weitere Informationen finden Sie in der Manpage für den Befehl tar mit "man tar". Oder führen Sie "tar --help" aus, um die Liste aller Optionen anzuzeigen, die vom tar-Befehl unterstützt werden.


Linux
  1. Linux nice and renice Command Tutorial (7 Beispiele)

  2. Linux-Befehle – Übersicht und Beispiele

  3. 16 Tar-Befehle zum Komprimieren und Extrahieren von Dateien unter Linux

  4. Erstellen und extrahieren Sie tar.gz- und tar.bz2-Dateien unter Ubuntu Linux

  5. Linux-cpio-Beispiele:So erstellen und extrahieren Sie cpio-Archive (und tar-Archive)

So erstellen Sie eine Sicherung mit dem tar-Befehl unter Linux

Tar-Befehl unter Linux (Archive erstellen und extrahieren)

Linux ar Command Tutorial für Anfänger (5 Beispiele)

Linux- und Unix-TAR-Befehl

Befehlsoptionen und Beispiele für den Tee-Befehl in Linux

Linux-tar-Befehl zum Komprimieren und Extrahieren von Dateien