This commit is contained in:
2025-09-12 10:12:35 +02:00
commit 4dbee4a106
4 changed files with 187 additions and 0 deletions

40
log_viewer.py Normal file
View File

@@ -0,0 +1,40 @@
import sys
import time
import os
def follow_file(filename):
"""Liest eine Datei und gibt neue Zeilen aus, sobald sie hinzugefügt werden."""
print(f"Beobachte Datei: '{filename}'. Beenden mit Strg+C.")
# Warte, bis die Datei existiert
while not os.path.exists(filename):
print(f"Warte auf die Erstellung von '{filename}'...", end='\r')
time.sleep(1)
try:
with open(filename, 'r', encoding='utf-8', errors='ignore') as file_:
# Gehe zum Ende der Datei, falls sie schon Inhalt hat
# file_.seek(0, 2)
while True:
line = file_.readline()
if not line:
# Wenn keine neue Zeile da ist, kurz warten
time.sleep(0.1)
continue
# Neue Zeile gefunden, ausgeben
print(line, end='')
except FileNotFoundError:
print(f"Fehler: Datei '{filename}' wurde nicht gefunden.")
except KeyboardInterrupt:
print("\nViewer beendet.")
if __name__ == "__main__":
if len(sys.argv) != 2:
print(f"Benutzung: python3 {sys.argv[0]} <dateipfad>")
sys.exit(1)
log_file_path = sys.argv[1]
follow_file(log_file_path)