Blame view
pytail.py
1.34 KB
1b4aa4cf7 init |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
#!/usr/bin/env python3 import re, os, time, sys from time import time, sleep from os.path import join, getsize, getmtime if len(sys.argv) == 1: print("Argument Missing !") print("Usage: {0:s} /path/to/log/file".format(sys.argv[0])) sys.exit(1) startTime = time() mTimeStart = 0 fileName = sys.argv[1] if not os.path.exists(fileName) or not os.path.isfile(fileName): print("This file '{0:s}' does not exist !".format(fileName)) sys.exit(2) try: with open(fileName, 'r') as f: f.read(1) except Exception as e: print("This file '{0:s}' cannot be opened for reading !".format(fileName)) sys.exit(3) folderLogs = os.path.dirname(fileName) copyLines = [] try: while True: with open(fileName, 'r') as f: lines = f.readlines() show = False if len(copyLines) == 0: showLines = lines[-10:] show = True elif len(copyLines) != len(lines): showLines = lines[len(copyLines) - len(lines):] show = True if show: copyLines = lines.copy() for line in showLines: print(line, end='') sleep(1) except KeyboardInterrupt as e: print("Program stopped by user !") sys.exit(0) except Exception as e: print("Unknown error during execution !") print(e) sys.exit(4) |