我需要知道如何使用Go检测文件何时发生更改。我知道Unix提供了一个名为fcntl()的函数,它会在特定文件发生更改时发出通知,但我在Go中没有找到这个函数。请帮帮我。
发布于 2011-11-26 02:17:42
我想补充一下peterSO的回答,如果你真的想读取由其他进程附加到文件中的数据-- tail程序在Unix中所做的那样--可能更好的做法是让tail自己完成监视文件的繁重工作,并使用它输出的内容。这可以通过使用exec包中的StdoutPipe函数运行tail来实现。
在我看来,使用tail来完成这类任务更可取,因为tail已经被教会了一堆聪明的技巧,包括检测文件替换(通常发生在监视日志文件被logrotate或类似的东西轮换时)。
https://stackoverflow.com/questions/8270441
复制相似问题