python代码的tail-f功能。跟踪文件追加和截断。

tailf的Python项目详细描述


尾翼

tail -fpython代码的功能。跟踪文件追加和 截断。

支持python3.6+。

示例

pip install tailf==0.2.5
importtailfimporttimewithtailf.Tail(filename)astail:whileTrue:foreventintail:ifisinstance(event,bytes):print(event.decode("utf-8"),end='')elifeventistailf.Truncated:print("File was truncated")else:assertFalse,"unreachable"# currently. more events may be introduced latertime.sleep(0.01)# save CPU cycles
# this example requires python3.7importasyncioimporttailfasyncdefmain():withtailf.Tail(filename)astail:whileTrue:event=awaittail.wait_event()ifisinstance(event,bytes):print(event.decode("utf-8"),end='')elifeventistailf.Truncated:print("File was truncated")else:assertFalse,"unreachable"# currently. more events may be introduced laterasyncio.run(main())

限制

  • 截断检测通常是不可靠的。它主要由 文件大小减小,这有时可能不可靠。当一个文件 变大很少被截断,这就足够了。

  • 异步跟踪在计时器事件(当前为0.01秒)时完成。 inotify支持可以在linux上解决这个问题。请随意提出其他建议 解决。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java管道<I/O>流。我可以传递复杂的对象吗?   arraylist使用Java HashMap多类型   注释中不允许从伴随对象分配的java静态最终值   hashmap中的java If构造。打电话   java查找匹配文本中的单词索引   类路径奇怪的Java类路径/类加载器行为   java中检测按钮使用情况的swing方法   使用ExecutorService在Java中执行多线程代码时无法返回,原因是什么?   JAXB将XML文件映射到java类   在JavaSwing应用程序中嵌入Log4j和AOP以记录异常   java在另一个包中委托接口的方法时,如何使委托类成为非公共类?   java如何使用各自的数组ID或值对数组进行排序?   java Fontmetrics stringwidth vs StringLength   hadoop java hdfs api协议缓冲区异常   java将当前数组索引分配给变量以使其递增?   java如何在Emacs中为初学者首次启用自动完成?   java maven 3 webapp没有要运行的测试吗?   java将子类型强制转换为定义为泛型的类型   要运行的java代码。来自jsp页面的exe文件   处理eclipse对java代码的解析?