mirror of
https://github.com/ReviveMii/revivetube
synced 2024-12-28 13:50:43 +01:00
Create check-folder-revivetube.py
This commit is contained in:
parent
420559f990
commit
86f4aace0b
47
check-folder-revivetube.py
Normal file
47
check-folder-revivetube.py
Normal file
@ -0,0 +1,47 @@
|
||||
import os
|
||||
import time
|
||||
|
||||
def get_folder_size(folder_path):
|
||||
"""Berechnet die Gesamtgröße eines Ordners in Bytes."""
|
||||
total_size = 0
|
||||
for dirpath, dirnames, filenames in os.walk(folder_path):
|
||||
for filename in filenames:
|
||||
filepath = os.path.join(dirpath, filename)
|
||||
# Nur existierende Dateien berücksichtigen
|
||||
if os.path.exists(filepath):
|
||||
total_size += os.path.getsize(filepath)
|
||||
return total_size
|
||||
|
||||
def delete_files(folder_path, extensions):
|
||||
"""Löscht alle Dateien mit den angegebenen Erweiterungen im Ordner."""
|
||||
for dirpath, dirnames, filenames in os.walk(folder_path):
|
||||
for filename in filenames:
|
||||
if any(filename.lower().endswith(ext) for ext in extensions):
|
||||
filepath = os.path.join(dirpath, filename)
|
||||
try:
|
||||
os.remove(filepath)
|
||||
print(f"Gelöscht: {filepath}")
|
||||
except Exception as e:
|
||||
print(f"Fehler beim Löschen von {filepath}: {e}")
|
||||
|
||||
def monitor_folder(folder_path, size_limit_gb, check_interval):
|
||||
"""Überwacht einen Ordner und löscht bestimmte Dateien, wenn die Größe überschritten wird."""
|
||||
size_limit_bytes = size_limit_gb * 1024 * 1024 * 1024 # GB in Bytes umrechnen
|
||||
while True:
|
||||
folder_size = get_folder_size(folder_path)
|
||||
print(f"Ordnergröße: {folder_size / (1024 * 1024 * 1024):.2f} GB")
|
||||
if folder_size > size_limit_bytes:
|
||||
print("Größenlimit überschritten! Lösche .flv und .mp4 Dateien...")
|
||||
delete_files(folder_path, [".flv", ".mp4"])
|
||||
time.sleep(check_interval)
|
||||
|
||||
if __name__ == "__main__":
|
||||
# Pfad zum Überwachungsordner
|
||||
folder_to_monitor = "./sigma/videos/"
|
||||
# Größenlimit in GB
|
||||
size_limit = 7 # Geändert auf 7 GB
|
||||
# Intervall in Sekunden
|
||||
interval = 5
|
||||
|
||||
# Überwachung starten
|
||||
monitor_folder(folder_to_monitor, size_limit, interval)
|
Loading…
Reference in New Issue
Block a user