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]} ") sys.exit(1) log_file_path = sys.argv[1] follow_file(log_file_path)