Was ist das Tarfile -Modul in Python??
Wir müssen das Tarfile -Modul nicht explizit installieren, da es Teil der Python Standard Library ist. Alles was wir tun müssen, ist es zu „importieren“. Das Lesen und Schreiben von Teerarchiven kann viel einfacher gemacht werden, als es mit den Methoden des Python -Moduls „Tarfile“ bereitgestellt werden sollte. Das integrierte „Tarfile“ -Modul in Python bietet eine leistungsstarke Schnittstelle zum Schreiben und Lesen von TAR-Dateien.
Dateimodi zum Öffnen der Python -Tar -Dateien
Im Folgenden finden Sie einige Dateimodi, die in Python verwendet werden können, um ein Tarfile zu öffnen:
R: Öffnet eine TAR -Datei zum Lesen.
R: Öffnet eine TAR -Datei und liest eine unkomprimierte Version davon.
W oder W: Ermöglicht unkomprimiertes Schreiben durch Öffnen einer TAR -Datei.
a oder a: Öffnet eine TAR -Datei, sodass die Daten ohne Komprimierung an sie angehängt werden können.
R: GZ: Öffnet eine gzip-komprimierte TAR-Datei zum Lesen.
W: GZ: Öffnet eine gzip-komprimierte TAR-Datei zum Schreiben.
R: BZ2: Öffnet eine bZIP2 -komprimierte Tar -Datei zum Lesen.
W: BZ2: Öffnet eine bZIP2 -komprimierte Tar -Datei zum Schreiben.
Verwenden wir nun das Tarfile -Modul, um zu verstehen, wie es in Python funktioniert.
Erstellen einer TAR -Datei
Mit dem Tarfile -Modul in Python können wir TAR -Dateien erstellen. Öffnen Sie zunächst eine TAR -Datei im Schreibmodus. Fügen Sie dann der TAR -Datei ein Bündel von Dateien oder eine einzige Datei hinzu.
Beispiel 1: Erstellen einer TAR -Datei mithilfe der Funktion open ())
Hier verwenden wir die Funktion open (), um eine TAR -Datei und die Methode add () zu erstellen, um der TAR -Datei andere Dateien hinzuzufügen.
Ausgang
Hier ist die erste Eingabe für die Open () -Methode der Name unserer TAR -Datei, die erstellt werden muss, gefolgt vom Argument „W“ zum Öffnen der Datei (TARFILE) im Schreibmodus. Der Name der Datei, der dem "hinzugefügt werden muss".Die TAR ”-Datei wird in der Methode add () als Eingabe übergeben. Wir archivieren drei Dateien mithilfe der Funktion add () in einem Dateiobjekt in unsere TAR -Datei
Beispiel 2: das Betriebssystem.ListDir () -Funktion zum Erstellen und Listen von Dateien
Die Methode ListDir () gibt eine Liste von Dateien und Verzeichnissen zurück, die sich in einem bestimmten Verzeichnis befinden. Mit dem Tarfile -Modul erstellen wir zunächst unser Tarfile. Anschließend fügen wir die Dateien mit der Funktion add () in unsere TAR -Datei hinzu. Nachdem wir die Dateien zur TAR -Datei hinzugefügt haben, erhalten wir eine Liste von Dateien, die in der “archiviert wurden.Tar ”-Datei mit dem Betriebssystem.ListDir () Funktion. Um diese Funktion zu verwenden, müssen wir das Betriebssystemmodul importieren.
Die TAR -Datei "Ordner" wird erstellt, indem alle Dateien Archivieren im Ordner "Daten" angegeben werden. Die Funktion getNames () gibt die Dateinamen zurück, die in der TAR -Datei „Ordner“ gespeichert sind.
So überprüfen Sie, ob eine Datei Teer ist oder nicht
Mit der Methode is_tarfile () im Tarfile -Modul können wir schnell feststellen, ob eine Datei die “hat.Teer ”Erweiterung.
Wir geben den Namen der „my_file.TAR ”-Datei im Modul is_tarfile (), um zu prüfen, ob es sich um eine TAR -Datei handelt oder nicht. Die Funktion gibt true zurück, was bedeutet, dass die angegebene Datei eine TAR -Datei ist. Lassen Sie uns nach einer anderen Datei suchen.
Seit „Notiz.txt ”ist keine TAR -Datei, die Funktion gibt false als Ausgabe zurück.
Lesen einer TAR -Datei
Die Tarfile -Bibliothek kann Ihnen beim Lesen von TAR -Dateien helfen, ohne sie zuerst zu extrahieren. Das Tarfile.Öffnen (Filepath, Modus) kann verwendet werden, um eine TAR -Datei in Python zu öffnen. Die Datei/der Pfad ist der absolute oder relative Speicherort der Datei, die wir lesen möchten. Anstelle des Modus können verschiedene Arten von Parametern verwendet werden.
Wir können die geöffnete Datei auch im Kompressmodus lesen. Eine Komprimierungsmethode kann optional mit dem Betriebsmodus kombiniert werden. Somit wird der Modus [: Komprimierung] zur neuen Syntax. Die Abkürzungen, die die Komprimierungsmethoden unterstützen, sind wie folgt:
Im vorherigen Code eröffnen wir zuerst eine BZ2 -komprimierte TAR -Datei zum Schreiben. Dann öffnen wir die bz2 -komprimierte Tar -Datei zum Lesen.
Überprüfen Sie den Inhalt der TAR -Datei
Mit der Funktion "GetNames () des Tarfile -Moduls können wir den Inhalt einer Tar -Datei anzeigen, ohne sie zu extrahieren. Die Liste der Dateinamen wird durch die Funktion getNames () des Tarfile -Moduls zurückgegeben. Hier öffnen wir die Datei im "Lesen" -Modus, damit "R" als zweites Argument in der Funktion open () angegeben ist.
Wir haben ein „Projekt“.TAR ”Datei im Lesemodus. Die Funktion getNames () gibt die Namen von Dateien zurück, die im „Projekt“ archiviert sind.tar ”Datei. Um die Inhalts-/Dateinamen zu drucken.
Anhängen von Dateien an die TAR -Datei
Verwenden der Funktion add () aus dem Tarfile -Modul können wir eine TAR -Datei direkt hinzufügen, genau wie wir es getan haben, als wir die TAR -Datei erstellt haben. Im Gegensatz zu früheren Beispielen wird „A“ als zweites Argument an die Open () -Methode übergeben, da die Datei im Append -Modus geöffnet werden muss.
Wir nutzen den Append -Modus, um das Projekt zu öffnen.tar ”Datei. Fünf Dateien sind bereits im „Paoject vorhanden.tar ”Datei. Wir fügen drei weitere Dateien mithilfe der Funktion add () im Dateiobjekt hinzu.
Extrahieren einer bestimmten Datei aus einer TAR -Archivdatei
Die Funktion extractFile () der Tarfile -Bibliothek kann verwendet werden, um eine Datei aus einem archivierten Ordner zu extrahieren. Diese Methode akzeptiert den Namen der Datei als Eingabe und extrahiert die angegebene Datei in unser Arbeitsverzeichnis. Wenn Sie mehr als eine Datei extrahieren möchten, müssen Sie die ExtractFile () mehrmals aufrufen. Bei der Extraktion eines Mitglieds als Dateiobjekt aus dem Archiv könnte ein Mitglied ein Tarinfo -Objekt oder ein Dateiname sein. Ein „io.Das Objekt des BufferedReaders gibt zurück, wenn ein Mitglied eine normale Datei oder ein Link ist. Für alle anderen bestehenden/aktuellen Mitglieder wird keiner vorgestellt. Der KeyError wird angehoben, wenn in der Archivdatei ein Mitglied fehlt.
Die Bücher.Die XML -Datei wird aus dem Projekt extrahiert.tar ”Datei.
Extrahieren Sie alle Dateien aus der TAR -Datei
Die Funktion extractall () der Tarfile -Bibliothek kann verwendet werden, um die gesamte Reißverschlussdatei zu extrahieren, anstatt nur eine bestimmte Datei. Das folgende Bild zeigt das Verzeichnis, bevor die Dateien der archivierten Datei extrahiert werden.
Der gesamte Inhalt der TAR -Datei wird in unserem aktuellen Verzeichnis, den „Daten“, nach der Methode Extractall () in den Ordner extrahiert. Lassen Sie uns nun die Dateien der archivierten Datei in diesen Ordner extrahieren.
Ausgang
Die Funktion extrahierte erfolgreich alle Dateien an den angegebenen Ordner.
Abschluss
In diesem Artikel haben wir gelernt, welche TAR -Dateien oder TAR -Archive es sind und wie das Tarfile -Modul von Python verwendet wird, um die TAR -Dateien zu erstellen, zugreifen und verwalten. Wir haben die Dateimodi gelernt, mit denen wir die TAR -Dateien im Lesen, Schreiben und Kompressionsmodi öffnen können. Wir haben die Methoden erläutert, um die Dateien nach dem Archivieren in TAR aufzulisten. Wir haben besprochen, wie die Dateien in der TAR -Datei angehängt werden können. Außerdem haben wir erfahren, wie eine bestimmte Datei oder alle Dateien in das aktuelle Verzeichnis extrahiert werden können.