Appearance
Archiviert Dateien als ZIP-Archive
Die Archivierung wird durch eine INI-Datei mit Sektion zip
gesteuert und steht in zwei verschiedenen Modi zur Verfügung:
Dateimodus: Dabei werden Dateien in ein neues ZIP-Archiv verschoben und komprimiert. Das sind alle Dateien in den Ordnern laut INI-Option folders
, die älter als die INI-Option ``days sind, eine Dateiendung mit regex
haben. Der Name der ZIP-Datei ergibt sich aus dem Präfix (INI-Optionarchiv_name
) sowie dem aktuellen Datum und Uhrzeit.
Ordnermodus: Bei einer INI-Option von archive_folders = 1
werden statt Dateien Ordner in den Ordner der INI-Option dest
komprimiert. Der Name ergibt sich dann aus der INI-Option archiv_name
, dem Ordnernamen sowie dem aktuellen Datum und Uhrzeit.
powershell
python prozessing.pyz compress_archives_xxxx.ini
INI-Datei: zip
ini
[zip]
days = # in Tagen, nach wie vielen Tagen die gefundenen Dateien archiviert werden sollen
regex = # Regulärer Ausdruck zum Suchen von Dateien
archiv_name = archiv # Präfix wie der Dateiname des Archivs heißen soll gefolgt von einem eindeutigen Zeitstempel
archive_type = zip|tar|tar.gz|tgz|tar.bz2|7z # Archiv-Format ZIP oder TAR oder 7z
archive_folders = 0|1 # Dateimodus oder Ordnermodus
# Archivierung eines einzelnen Ordners
folders = rohdaten
# Archivierung mehrerer Ordner
folders =
/2265/rohdaten
/2304/rohdaten
# Archivierung mehrerer Ordner mit Wildcard
folders =
D:/Daten/arch/*
# Archivierung nach `dest` anstatt innerhalb `folders`. Platzhalter {yyyy} wird mit Jahreszahl ersetzt.
dest = /archiv/{yyyy}
INI-Beispiel
Dateien mit der Endung .roh
und einem Alter > 4 Tage werden zu einer Datei archiv_YYYYMMDDhhmmss
gepackt
ini
[zip]
days = 4
regex = .roh
archiv_name = archiv
folders =
/2265/msr
/2304/msr
Dateien innerhalb des Ordners d:/HoPI2/archive
mit einem Alter > 4 Tage werden im Ordner z:/archiv/{yyyy}
gepackt. Befindet sich zum Beispiel eine Datei d:/HoPI2/archive/2234/foo.txt
, dann wird diese im Ordner z:/archiv/2022
mit dem Dateinamen server1_2234_YYYMMDDhhmmss
archiviert.
ini
[zip]
days = 4
regex = .*
archiv_name = server1
folders = d:/HoPI2/archive
dest = z:/archiv/{yyyy}
archive_folders = 1
Komprimiert mittels 7z.exe
die Datei D:/Daten/export/Export.zrxp
nach D:/Daten/export/Export.7z
ini
[zip]
days = 0
regex = Export.zrxp
folders = D:/Daten/export/
archiv_name = Export.7z
archive_type = 7z